https://bugs.kde.org/show_bug.cgi?id=524863

Ramil <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |[email protected]

--- Comment #8 from Ramil <[email protected]> ---
Hello, I reproduced this using Chrome and tested several approaches to SIGTERM.
Signaling only the main browser process invariably resulted in session
termination, while signaling the entire systemd area resulted in failure. The
"xdg-dbus-proxy" exception also allowed for a complete shutdown, assuming that
shutting down the proxy server along with Chrome would result in an
interruption.

What do you think about the following idea?:

1. Save the existing D-Bus shutdown attempt. 

2. If this fails, find
"app-flatpak-<escaped-app-id>-<escaped-instance-id>.instance scope" via systemd
and check its "ControlGroup'. Inside this cgroup, find a unique process with
`NSpid: <host-pid> 2`, whose parent process belongs to the same cgroup and has
`NSpid: <host-pid> 1`. Open the pidfd file, re-check the connection, and send
SIGTERM through it.

In my Chrome tests, this worked, including allowing an additional instance of
zypak to shut down on its own.

3. If the process cannot be identified in a secure manner or instances continue
to run for 10 seconds, display a warning suggesting forced termination instead
of sending SIGKILL automatically. The same warning will apply to systems
without the corresponding systemd scope.

This avoids binding libflatpak or reading its private files at runtime. Do you
think it's suitable?

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to