-
-
Notifications
You must be signed in to change notification settings - Fork 1.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
2.3.0 freezes after some time #1574
Comments
Doesn't look like any keepassxc code is called in that dump. |
It's a Release build without debug information sadly, the backtrace isn't very useful. |
Yup, thats why I recompiled the package with symbols. I guess the addresses 0x0000558… are the keepassxc code? |
Addresses don't help us. They can be anything. We need code lines or at least symbols. |
Maybe this crash has something to do with single-instance mode or KeePassXC-Browser. There are a few occurrences of QSocketNotifier in the back trace |
It froze again, so I now have a backtrace with most symbols: It seems related to some of the new browser integration code which is weird because I have both browser integration options disabled and only use autotype. Backtrace of main thread (all other threads just waiting on some poll or condition variable)
|
NativeMessagingHost.cpp:100 is weird. That line is Windows-only. I can see, though, how that could create freezes were it compiled in. |
Same with the proxy/NativeMessagingHost.cpp:44. |
@phoerious Line 100 is not Windows-only, It is super weird and needs to be eliminated, I do not like it at all. The function "readLength()" is called here. I think the readLength() function is poorly named (it actually reads the length and then goes on to read the rest of stdin!). |
Line 100 is inside an #ifdef Q_OS_WIN. Edit: ah, I was in the Base file, not the Host file, somehow. Now the stacktrace makes more sense. |
Happens for me as well - if I minimize keepassxc for some time, it's frozen. Thread 1 "keepassxc" received signal SIGTTIN, Stopped (tty input). |
This even happens without minimizing ;( Again "stopped" and debug shows |
Maybe there's a way to handle this signal also in a way that it doesn't stop the process. In what way do you launch the KeePassXC process? |
I launched it from a shell in gnome-terminal with "keepassxc &". Running now in foreground... Still I wonder why KeePassXC is reading from controlling terminal at all. That looks wrong to me for a GUI program. |
This happens because of native messaging. The workaround for you is to disable browser integration from the settings if you don't use it. I'll look into the issue. |
Thanks, @varjolintu . I wanted to use browser integration, one of the reasons for using it. |
@ajaeger And please try to launch it outside of a shell with the browser integration (from a menu etc) and try if it does the same. |
I my case I have browser integration disabled and it still hangs with the mentioned backtrace. So it seems the browser integration is still running somehow despite being disabled. When I send SIGTTIN or SIGTTOU to a instance started in a terminal, it simply does standard job control as expected, so this is probably unrelated to the hang I experience, as my instance is started as a background task without any terminal attached? I can however try to send it a SIGCONT the next time it hangs and see if that helps. |
So I tried sending a number of signals to a hanging process (including SIGCONT and SIGTERM), but none of these have any effect. The only thing that works is killing it using SIGKILL. |
I think I'll need to do a little fix: if the proxy is used KeePassXC itself won't listen STDIN at all. You are correct, it's still being listened even if the browser integration is disabled. Need to change that too. |
@klemens varjolintu@86278b3 - this should fix the issue. |
Thanks! I applied the patch on top of 2.3.1 and rebuilt. Will report back if I experience any more hangs. |
I have not experienced any hangs with the patched version since my last comment, so it seems this has been fixed! I just updated to 2.3.3 and will reopen this issue if there are still any problems. |
Steps to Reproduce
Version 2.3.0 freezed two times for me today under linux (using the official arch package) while being locked and minimized to tray. It did not respond to any signals, so I had to SIGKILL it.
This sounds very similar to #1561, but I didn't get a segfault, so I am not really sure…
Here is the backtrace of the second freeze, which doesn't have symbols unfortunately. However I just recompiled the package with debug symbols, so I can hopefully provide a better backtrace soon.
Backtrace of the main thread
Debug Info
KeePassXC - Version 2.3.0
Revision: 4c0ed74
Bibliotheken:
Betriebssystem: Arch Linux
CPU-Architektur: x86_64
Kernel: linux 4.15.5-1-ARCH
Aktivierte Erweiterungen:
The text was updated successfully, but these errors were encountered: