Boatswain flatpak process enters zombie state on KDE after being closed via anything but its inbuilt Quit function
Context
I am running Boatswain 0.4.0 in KDE Plasma 6.0.2 on Wayland without any custom KWin scripts.
My device is a Stream Deck XL.
Issue
When I close Boatswain via any means which are NOT the inbuilt CTRL + Q
shortcut or the Quit
entry in the triple-dot menu, the window closes and the Stream Deck will stop responding to button presses while still displaying the buttons from the last profile. However, flatpak ps
still shows the Boatswain process running in the background.
Launching Boatswain again while the broken process is running start another process visible via flatpak ps
.
However, closing this new instance with any of the below listed actions then DOES close the NEW process properly for some reason, but leaving the broken process still running.
Meanwhile, closing Boatswain via CTRL + Q
when two Boatswain processes are running DOES close BOTH.
Actions triggering the undesired behavior:
- pressing
ALT + F4
while the Boatswain window is in focus - clicking the
x
button in the top right of the application window - clicking the
Quit
menu entry in the context menu of the window title bar - clicking the
Quit
menu entry in the context menu of the task manager app icon
I am not observing the same behavior with other flatpaks. E.g. when I close Discord, Element, Bitwarden or Spotify via the listed actions, they do not show up in flatpak ps
anymore.
This is reproducible with a 100% success rate on two different physical PCs.
journalctl
doesn't say anything useful about boatswain during these reproductions.
It only says Loading base GJS plugin
and AdwNavigationPage
complains about missing a title and suggesting to use AdwHeaderBar: show-title
instead, which I assume are both expected entries.
Why is this a problem?
- This makes is impossible(?) to reliably detect if Boatswain is running to assure it is (re)started when not running.
- This gives users the illusion that the Stream Deck should still be responsive to their button presses, even when nothing is actually going to happen when they are pressed.
Note
I would understand if the intend was to have the process running in the background with the window closed, but not with ALT + F4
or an another explicit Quit
action telling the application to quit rather than close the window, and only if it was actually functional and resumable while running in the background.