To reproduce, enable "minimize app instead of close" setting in desktop version of KeeWeb, click close, then a single left-click of the system tray icon crashes the program with a seg fault. Right-clicking works fine.
Ubuntu 16.04 32-bit, MATE desktop environment.
Version/user-agent info:
KeeWeb v1.4.1 (df218ae, 2017-03-26)
Environment: electron v1.4.15
User-Agent: Mozilla/5.0 (X11; Linux i686) AppleWebKit/537.36 (KHTML, like Gecko) KeeWeb/1.4.1 Chrome/53.0.2785.143 Electron/1.4.15 Safari/537.36
Is it officially supported by Electron? If you could try different Electron versions, it would help. I can make the build, if you want, do you have some time to debug?
Actually, there's a demo app: https://electron.atom.io/
Please try it and let me know if it fails on tray demo.
The built demo at https://electron.atom.io/ for linux is 64-bit only. I tried building the demo from source (had to install nodejs v4.2.6 and npm v3.5.2 from repos first), but building failed perhaps due to the nodejs and npm versions not being the latest (suggested in the error log).
Maybe I could try installing latest versions later... or is there something specific you'd like me to try?
It seems Electron binaries were built for 32- and 64-bit Ubuntu 12.04+ https://github.com/electron/electron/blob/master/docs/tutorial/supported-platforms.md
Yes, electron is built for both 32 and 64-bit (that's the build we're using to make 32-bit keeweb). I mean, probably this desktop environment is not supported? If 32-bit demo is not available, could you please run keeweb with the latest 32-bit electron?
I've built it for you: https://www.dropbox.com/s/7ccu7k2k3w30368/k32.zip?dl=0
Thanks for the build. I get an error when trying to run it: symbol lookup error: /home/[username]/Downloads/KeeWeb-1.4.1.linux.ia32/KeeWeb: undefined symbol: _ZN2v87Context3NewEPNS_7IsolateEPNS_22ExtensionConfigurationENS_5LocalINS_14ObjectTemplateEEENS5_INS_5ValueEEEj
Sorry, forgot to replace the executable. Could you please download this: https://github.com/electron/electron/releases/download/v1.6.8/electron-v1.6.8-linux-ia32.zip and replace KeeWeb with electron executable?
What do you mean? I tried copying electron from electron-v1.6.8-linux-ia32 directory into KeeWeb-1.4.1 and running KeeWeb executable. I also tried copying KeeWeb from KeeWeb-1.4.1 into the electron-v1.6.8-linux-ia32 directory and running KeeWeb. Both give undefined symbol errors.
I also tried running electron in electron-v1.6.8-linux-ia32 which asks for an app to run...
Sorry, I'm not familiar with electron...
copy electron from electron-v1.6.8-linux-ia32 into KeeWeb-1.4.1 and run electron.
./electron: symbol lookup error: ./electron: undefined symbol: UCNV_FROM_U_CALLBACK_SUBSTITUTE_58
Weird... Probably something is broken in new electron+keeweb.
I installed the latest versions of nodejs (v7.10.0) and npm (4.2.0), and built the electron demos. The tray icon demo works, i.e. a tray icon shows up, and clicking on it does not cause crashes. Is there anything else you'd like me to try?
I installed the linux 32-bit .deb (thanks!) for KeeWeb v1.5.0, which gives slighly more information on this crash:
/usr/bin/KeeWeb: line 2: 30878 Segmentation fault /opt/keeweb-desktop/KeeWeb --disable-updater "$1"
The five digit number (in this case, 30878) changes each time, but the rest is the same.
@adatum have you installed the dependencies? You can do it with:
apt-get install -f
I think, 30878 is some address in memory, not actually useful.
It seems so. The above command shows nothing to install. Is there an explicit list of dependencies for me to check?
Maybe the Lintian output for the .deb has some hints: https://gist.github.com/adatum/2f18948eb8e1f905a8484bdbf5cad07d
It means that the dependency is installed, it's libgconf-2. Probably the error is somewhere in electron, but we need to test it on newer versions. It's still the same, because there were errors with new version, so I haven't upgraded it.
I tried lintian long ago, and it shows a lot of warnings about keeweb, I understand exactly nothing of them. Some of this stuff belongs to electron, not keeweb. It's an issue for submission to store, but probably it's not the reason of this bug, so we're not going to fix them for now.
Is there anything in syslog?
Couple of related issues:
https://github.com/electron/electron/issues/8525
https://github.com/electron/electron/issues/9046
Good call on syslog :
KeeWeb[2412]: segfault at 4e455454 ip b6848e75 sp bf89f1a0 error 4 in libnode.so[b62e5000+13af000]
Googling suggests it might be due to electron or atom.
I'm not sure if those other issues are related, since I do get the indicator applet and have no problem with responsiveness.
I also tested on Gnome2 (Metacity and also Compiz), Gnome Shell, and the crash on left-clicking the taskbar icon happens on all of them just like with MATE. However, in Unity there is no problem.
Interesting. I'll try to repeat it, maybe there's a workaround. If you have a clue, please let me know.
This happens to me on Windows as well. Windows 7 Home Premium:
<?xml version="1.0" encoding="UTF-16"?>
<WERReportMetadata>
<OSVersionInformation>
<WindowsNTVersion>6.1</WindowsNTVersion>
<Build>7601 Service Pack 1</Build>
<Product>(0x3): Windows 7 Home Premium</Product>
<Edition>HomePremium</Edition>
<BuildString>7601.23796.amd64fre.win7sp1_ldr.170427-1518</BuildString>
<Revision>1130</Revision>
<Flavor>Multiprocessor Free</Flavor>
<Architecture>X64</Architecture>
<LCID>1033</LCID>
</OSVersionInformation>
<ParentProcessInformation>
<ParentProcessId>2500</ParentProcessId>
<ParentProcessPath>C:\Windows\explorer.exe</ParentProcessPath>
<ParentProcessCmdLine>C:\Windows\Explorer.EXE</ParentProcessCmdLine>
</ParentProcessInformation>
<ProblemSignatures>
<EventType>APPCRASH</EventType>
<Parameter0>KeeWeb.exe</Parameter0>
<Parameter1>1.5.3.0</Parameter1>
<Parameter2>5880f159</Parameter2>
<Parameter3>node.dll</Parameter3>
<Parameter4>6.5.0.0</Parameter4>
<Parameter5>5880f113</Parameter5>
<Parameter6>c0000005</Parameter6>
<Parameter7>000000000036b37c</Parameter7>
</ProblemSignatures>
<DynamicSignatures>
<Parameter1>6.1.7601.2.1.0.768.3</Parameter1>
<Parameter2>1033</Parameter2>
<Parameter22>845e</Parameter22>
<Parameter23>845ea65962e3b2fa62eee8cc302bb3ef</Parameter23>
<Parameter24>7d73</Parameter24>
<Parameter25>7d739ceeaadb8eccec8578ce9babe938</Parameter25>
</DynamicSignatures>
<SystemInformation>
<MID>6D2A447B-C6B6-4636-8E61-92E216B09614</MID>
<SystemManufacturer>Dell Inc.</SystemManufacturer>
<SystemProductName>XPS One 2710</SystemProductName>
<BIOSVersion>A12</BIOSVersion>
</SystemInformation>
</WERReportMetadata>
<?xml version="1.0" encoding="UTF-16"?>
<DATABASE>
<EXE NAME="KeeWeb.exe" FILTER="CMI_FILTER_PRIVACY">
<MATCHING_FILE NAME="d3dcompiler_47.dll" SIZE="4173928" CHECKSUM="0xFE690C6D" BIN_FILE_VERSION="6.3.9600.16384" BIN_PRODUCT_VERSION="6.3.9600.16384" PRODUCT_VERSION="6.3.9600.16384" FILE_DESCRIPTION="Direct3D HLSL Compiler for Redistribution" COMPANY_NAME="Microsoft Corporation" PRODUCT_NAME="Microsoft® Windows® Operating System" FILE_VERSION="6.3.9600.16384 (winblue_rtm.130821-1623)" ORIGINAL_FILENAME="d3dcompiler_47.dll" INTERNAL_NAME="d3dcompiler_47.dll" LEGAL_COPYRIGHT="© Microsoft Corporation. All rights reserved." VERDATEHI="0x0" VERDATELO="0x0" VERFILEOS="0x40004" VERFILETYPE="0x2" MODULE_TYPE="WIN32" PE_CHECKSUM="0x406193" LINKER_VERSION="0x60003" UPTO_BIN_FILE_VERSION="6.3.9600.16384" UPTO_BIN_PRODUCT_VERSION="6.3.9600.16384" LINK_DATE="08/22/2013 11:15:54" UPTO_LINK_DATE="08/22/2013 11:15:54" EXPORT_NAME="D3DCOMPILER_47.dll" VER_LANGUAGE="English (United States) [0x409]" EXE_WRAPPER="0x0" />
<MATCHING_FILE NAME="ffmpeg.dll" SIZE="2267240" CHECKSUM="0xCED87019" MODULE_TYPE="WIN32" PE_CHECKSUM="0x238E29" LINKER_VERSION="0x0" LINK_DATE="01/18/2017 19:27:08" UPTO_LINK_DATE="01/18/2017 19:27:08" EXPORT_NAME="ffmpeg.dll" EXE_WRAPPER="0x0" />
<MATCHING_FILE NAME="KeeWeb.exe" SIZE="88309360" CHECKSUM="0x421368E4" BIN_FILE_VERSION="1.5.3.0" BIN_PRODUCT_VERSION="1.5.3.0" PRODUCT_VERSION="1.5.3" FILE_DESCRIPTION="Free cross-platform password manager compatible with KeePass" COMPANY_NAME="KeeWeb" PRODUCT_NAME="KeeWeb" FILE_VERSION="1.5.3" ORIGINAL_FILENAME="KeeWeb.exe" INTERNAL_NAME="KeeWeb" LEGAL_COPYRIGHT="Copyright © 2017 Antelle" VERDATEHI="0x0" VERDATELO="0x0" VERFILEOS="0x40004" VERFILETYPE="0x1" MODULE_TYPE="WIN32" PE_CHECKSUM="0x544320D" LINKER_VERSION="0x0" UPTO_BIN_FILE_VERSION="1.5.3.0" UPTO_BIN_PRODUCT_VERSION="1.5.3.0" LINK_DATE="01/19/2017 17:03:21" UPTO_LINK_DATE="01/19/2017 17:03:21" EXPORT_NAME="electron.exe" VER_LANGUAGE="English (United States) [0x409]" EXE_WRAPPER="0x0" />
<MATCHING_FILE NAME="libEGL.dll" SIZE="102536" CHECKSUM="0x7BD9BD13" BIN_FILE_VERSION="2.1.0.0" BIN_PRODUCT_VERSION="2.1.0.0" PRODUCT_VERSION="2.1.0.unknown hash" FILE_DESCRIPTION="ANGLE libEGL Dynamic Link Library" PRODUCT_NAME="ANGLE libEGL Dynamic Link Library" FILE_VERSION="2.1.0.unknown hash" ORIGINAL_FILENAME="libEGL.dll" INTERNAL_NAME="libEGL" LEGAL_COPYRIGHT="Copyright (C) 2015 Google Inc." VERDATEHI="0x0" VERDATELO="0x0" VERFILEOS="0x4" VERFILETYPE="0x2" MODULE_TYPE="WIN32" PE_CHECKSUM="0x20233" LINKER_VERSION="0x0" UPTO_BIN_FILE_VERSION="2.1.0.0" UPTO_BIN_PRODUCT_VERSION="2.1.0.0" LINK_DATE="01/18/2017 19:41:02" UPTO_LINK_DATE="01/18/2017 19:41:02" EXPORT_NAME="libEGL.dll" VER_LANGUAGE="English (United States) [0x409]" EXE_WRAPPER="0x0" />
<MATCHING_FILE NAME="libGLESv2.dll" SIZE="2924680" CHECKSUM="0x30433518" BIN_FILE_VERSION="2.1.0.0" BIN_PRODUCT_VERSION="2.1.0.0" PRODUCT_VERSION="2.1.0.unknown hash" FILE_DESCRIPTION="ANGLE libGLESv2 Dynamic Link Library" PRODUCT_NAME="ANGLE libGLESv2 Dynamic Link Library" FILE_VERSION="2.1.0.unknown hash" ORIGINAL_FILENAME="libGLESv2.dll" INTERNAL_NAME="libGLESv2" LEGAL_COPYRIGHT="Copyright (C) 2015 Google Inc." VERDATEHI="0x0" VERDATELO="0x0" VERFILEOS="0x4" VERFILETYPE="0x2" MODULE_TYPE="WIN32" PE_CHECKSUM="0x2D0A48" LINKER_VERSION="0x0" UPTO_BIN_FILE_VERSION="2.1.0.0" UPTO_BIN_PRODUCT_VERSION="2.1.0.0" LINK_DATE="01/18/2017 19:40:53" UPTO_LINK_DATE="01/18/2017 19:40:53" EXPORT_NAME="libGLESv2.dll" VER_LANGUAGE="English (United States) [0x409]" EXE_WRAPPER="0x0" />
<MATCHING_FILE NAME="node.dll" SIZE="16704624" CHECKSUM="0x667B4443" BIN_FILE_VERSION="6.5.0.0" BIN_PRODUCT_VERSION="6.5.0.0" PRODUCT_VERSION="6.5.0" FILE_DESCRIPTION="Node.js: Server-side JavaScript" COMPANY_NAME="Node.js" PRODUCT_NAME="Node.js" FILE_VERSION="6.5.0" ORIGINAL_FILENAME="node.exe" INTERNAL_NAME="node" LEGAL_COPYRIGHT="Copyright Node.js contributors. MIT license." VERDATEHI="0x0" VERDATELO="0x0" VERFILEOS="0x40004" VERFILETYPE="0x1" MODULE_TYPE="WIN32" PE_CHECKSUM="0xFEE9D9" LINKER_VERSION="0x0" UPTO_BIN_FILE_VERSION="6.5.0.0" UPTO_BIN_PRODUCT_VERSION="6.5.0.0" LINK_DATE="01/19/2017 17:02:11" UPTO_LINK_DATE="01/19/2017 17:02:11" EXPORT_NAME="node.dll" VER_LANGUAGE="English (United States) [0x409]" EXE_WRAPPER="0x0" />
<MATCHING_FILE NAME="uninst.exe" SIZE="425096" CHECKSUM="0xD7FB9F97" MODULE_TYPE="WIN32" PE_CHECKSUM="0x752E8" LINKER_VERSION="0x60000" LINK_DATE="07/25/2016 00:55:41" UPTO_LINK_DATE="07/25/2016 00:55:41" EXE_WRAPPER="0x0" />
<MATCHING_FILE NAME="xinput1_3.dll" SIZE="107368" CHECKSUM="0x705A33A2" BIN_FILE_VERSION="9.18.944.0" BIN_PRODUCT_VERSION="9.18.944.0" PRODUCT_VERSION="9.18.944.0000" FILE_DESCRIPTION="Microsoft Common Controller API" COMPANY_NAME="Microsoft Corporation" PRODUCT_NAME="Microsoft® DirectX for Windows®" FILE_VERSION="9.18.944.0000" ORIGINAL_FILENAME="XInput1_3.dll" INTERNAL_NAME="XInput" LEGAL_COPYRIGHT="© Microsoft Corporation. All rights reserved." VERDATEHI="0x0" VERDATELO="0x0" VERFILEOS="0x40004" VERFILETYPE="0x2" MODULE_TYPE="WIN32" PE_CHECKSUM="0x2415A" LINKER_VERSION="0x50002" UPTO_BIN_FILE_VERSION="9.18.944.0" UPTO_BIN_PRODUCT_VERSION="9.18.944.0" LINK_DATE="04/05/2007 00:53:49" UPTO_LINK_DATE="04/05/2007 00:53:49" EXPORT_NAME="XINPUT1_3.dll" VER_LANGUAGE="English (United States) [0x409]" EXE_WRAPPER="0x0" />
</EXE>
<EXE NAME="node.dll" FILTER="CMI_FILTER_THISFILEONLY">
<MATCHING_FILE NAME="node.dll" SIZE="16704624" CHECKSUM="0x667B4443" BIN_FILE_VERSION="6.5.0.0" BIN_PRODUCT_VERSION="6.5.0.0" PRODUCT_VERSION="6.5.0" FILE_DESCRIPTION="Node.js: Server-side JavaScript" COMPANY_NAME="Node.js" PRODUCT_NAME="Node.js" FILE_VERSION="6.5.0" ORIGINAL_FILENAME="node.exe" INTERNAL_NAME="node" LEGAL_COPYRIGHT="Copyright Node.js contributors. MIT license." VERDATEHI="0x0" VERDATELO="0x0" VERFILEOS="0x40004" VERFILETYPE="0x1" MODULE_TYPE="WIN32" PE_CHECKSUM="0xFEE9D9" LINKER_VERSION="0x0" UPTO_BIN_FILE_VERSION="6.5.0.0" UPTO_BIN_PRODUCT_VERSION="6.5.0.0" LINK_DATE="01/19/2017 17:02:11" UPTO_LINK_DATE="01/19/2017 17:02:11" EXPORT_NAME="node.dll" VER_LANGUAGE="English (United States) [0x409]" EXE_WRAPPER="0x0" />
</EXE>
<EXE NAME="kernel32.dll" FILTER="CMI_FILTER_THISFILEONLY">
<MATCHING_FILE NAME="kernel32.dll" SIZE="1163264" CHECKSUM="0x50C4B347" BIN_FILE_VERSION="6.1.7601.23796" BIN_PRODUCT_VERSION="6.1.7601.23796" PRODUCT_VERSION="6.1.7601.18015" FILE_DESCRIPTION="Windows NT BASE API Client DLL" COMPANY_NAME="Microsoft Corporation" PRODUCT_NAME="Microsoft® Windows® Operating System" FILE_VERSION="6.1.7601.18015 (win7sp1_gdr.121129-1432)" ORIGINAL_FILENAME="kernel32" INTERNAL_NAME="kernel32" LEGAL_COPYRIGHT="© Microsoft Corporation. All rights reserved." VERDATEHI="0x0" VERDATELO="0x0" VERFILEOS="0x40004" VERFILETYPE="0x2" MODULE_TYPE="WIN32" PE_CHECKSUM="0x120883" LINKER_VERSION="0x60001" UPTO_BIN_FILE_VERSION="6.1.7601.23796" UPTO_BIN_PRODUCT_VERSION="6.1.7601.23796" LINK_DATE="04/28/2017 01:12:51" UPTO_LINK_DATE="04/28/2017 01:12:51" EXPORT_NAME="KERNEL32.dll" VER_LANGUAGE="English (United States) [0x409]" EXE_WRAPPER="0x0" />
</EXE>
</DATABASE>
@2gen with the same steps?
@antelle Yes, same steps. Enable 'minimize app instead of close' and then close the application. Single click the tray icon, crash. Version 1.5.3.
In v1.6 we'll update electron, we'll see if it persists.
Fixed Windows crash, but I can't test it on Linux, because in ubuntu unity, there's no possibility to click on tray icon.
It is still crashing for me.
KeeWeb v1.5.4 (b730cbd, 2017-06-03)
Environment: electron v1.4.15
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) KeeWeb/1.5.3 Chrome/53.0.2785.143 Electron/1.4.15 Safari/537.36
Of course, it's not released.
Fixed Windows crash, but I can't test it on Linux, because in ubuntu unity, there's no possibility to click on tray icon.
The crash was never in Unity; it's in Gnome2, Gnome Shell, MATE, etc
If you can make a build available, I'll test it.
Here are the builds: https://www.dropbox.com/sh/ip32qdg1jlojvzu/AAA4QxBrrFeZGsG1tu3vUvlZa?dl=0
Excellent. The crash is solved in linux 32 bit, tested with MATE, Gnome2, Gnome Shell, (and Unity still works as before).
Cool, thanks for testing, then it's fixed everywhere, probably.
Tray icon was destroyed in its click event handler.
Hi
ETA for next update for windows ? or beta version ?
This bug is really annoying
Thanks :)
@LiloBzH it's released, please update
Yes ! Update done and it's ok 👍