keepassxreboot / keepassxc

KeePassXC is a cross-platform community-driven port of the Windows application “Keepass Password Safe”.
https://keepassxc.org/
Other
20.74k stars 1.44k forks source link

SIGSTOP unrecoverable #3139

Closed strk closed 5 years ago

strk commented 5 years ago

Expected Behavior

You can STOP and RESUME the keepassxc process

Current Behavior

Starting keepassxc from a unix shell and then stopping it with CTRL-z makes the process unrestorable (SIGCONT won't put it out of STOPPED state)

Possible Solution

No idea

Steps to Reproduce

  1. open a terminal, start keepassxc from there
  2. hit CTRL-z
  3. type: bg
  4. Try to use the application

Context

I was trying to use it but had to use the terminal too, so wanted to put it in background

Debug Info

keepassxc 2.3.1 Installed from packages for Ubuntu 18.04 LTS

Libraries:

Operating system: Ubuntu 18.04 LTS CPU architecture: x86 64 Kernel: kernel, really ??

Enabled extensions: I don't know

droidmonkey commented 5 years ago

to bring an app back from Ctrl+Z you have to issue fg, not bg.

droidmonkey commented 5 years ago

I cannot replicate this.

strk commented 5 years ago

On Thu, May 16, 2019 at 02:37:26PM -0700, Jonathan White wrote:

to bring an app back from Ctrl+Z you have to issue fg, not bg.

I know, fg doesn't work either. The process remains in stop mode. I guess some component is intercepting the signal...

No menu responds to mouse events after stop and any attempt to resume

Here's a backtrace:

[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
0x00007f8198ad40b4 in __GI___libc_read (fd=0, buf=0x560d2972df00, nbytes=1024) at ../sysdeps/unix/sysv/linux/read.c:27
27      ../sysdeps/unix/sysv/linux/read.c: No such file or directory.
(gdb) bt
#0  0x00007f8198ad40b4 in __GI___libc_read (fd=0, buf=0x560d2972df00, nbytes=1024) at ../sysdeps/unix/sysv/linux/read.c:27
#1  0x00007f8198a51148 in _IO_new_file_underflow (fp=0x7f8198dafa00 <_IO_2_1_stdin_>) at fileops.c:531
#2  0x00007f8198a4f748 in __GI__IO_file_xsgetn (fp=0x7f8198dafa00 <_IO_2_1_stdin_>, data=<optimized out>, n=4) at fileops.c:1344
#3  0x00007f8198a433c1 in __GI__IO_fread (buf=<optimized out>, size=1, count=4, fp=0x7f8198dafa00 <_IO_2_1_stdin_>) at iofread.c:38
#4  0x00007f8199240ccd in __gnu_cxx::stdio_sync_filebuf<char, std::char_traits<char> >::xsgetn(char*, long) ()
    at /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#5  0x00007f819924f5ad in std::istream::read(char*, long) () at /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#6  0x0000560d2797117a in  ()
#7  0x0000560d279818b2 in  ()

NOTE: all applications I know of, even if GUI, can continue to work in backgroun (thus the bg)...

droidmonkey commented 5 years ago

I'll take another looksie

droidmonkey commented 5 years ago

I still cannot reproduce the behavior you describe with either fg or bg. Make sure you didn't accidentally start another job and you are issuing fg/bg on that instead of KeePassXC.