[Bug]: Process breaks when running more than one instance of a program
Describe the bug
If you open two instances of the same program (so using the same bottle) and then close the most recent one to open, the remaining instance stops responding and becomes unrecoverable.
This becomes most noticeable when you have a file association set up to open files with the bottle program, and so opening more than one file at a time spawns multiple instances.
If you close the first one opened, then the most recent one opened continues functioning.
The behaviour gets harder to predict with more than two instances but I suspect it follows the same rules.
To Reproduce
- Install the bottles flatpak. I am running 51.21
- Create a new bottle with the "Application" configuration and soda-9.0.1 runner and name it "Test"
- Download the inkscape 0.92.5 installer exe from here
- Click "Run Executable" in the newly-created bottle and select the downloaded installer
- Proceed through the installation with all default options
- Click "Finish" without running inkscape
- Open terminal and run
flatpak run --command=bottles-cli com.usebottles.bottles run -p inkscape -b Testand move the window to the left half of the screen - Open another terminal and run
flatpak run --command=bottles-cli com.usebottles.bottles run -p inkscape -b Testand move the window to the right half of the screen - Close the window on the right half of the screen with "file > quit" (if window has no decorations)
The remaining window will stop responding to clicks. Attempting to force close it will also fail. The only way to remove the dead instance is to directly kill bottles (via sig-kill) in the terminal or system monitor.
Package
Flatpak from Flathub
Distribution
Manjaro
Debugging Information
Official Package: true
Version: '51.21'
DE/WM: plasmawayland
Display:
X.org: true
X.org (port): :1
Wayland: true
Graphics:
vendors:
nvidia: &id002
vendor: nvidia
envs:
__NV_PRIME_RENDER_OFFLOAD: '1'
__GLX_VENDOR_LIBRARY_NAME: nvidia
__VK_LAYER_NV_optimus: NVIDIA_only
icd: /usr/lib/x86_64-linux-gnu/GL/vulkan/icd.d/nvidia_icd.json:/usr/lib/i386-linux-gnu/GL/vulkan/icd.d/nvidia_icd.json
nvngx_path: /usr/lib/x86_64-linux-gnu/GL/nvidia-570-144/lib/nvidia/wine
intel: &id001
vendor: intel
envs:
DRI_PRIME: '1'
icd: /usr/lib/x86_64-linux-gnu/GL/vulkan/icd.d/intel_icd.x86_64.json:/usr/lib/x86_64-linux-gnu/GL/vulkan/icd.d/intel_hasvk_icd.x86_64.json:/usr/lib/i386-linux-gnu/GL/vulkan/icd.d/intel_icd.i686.json:/usr/lib/i386-linux-gnu/GL/vulkan/icd.d/intel_hasvk_icd.i686.json
prime:
integrated: *id001
discrete: *id002
Kernel:
Type: Linux
Version: 6.12.28-1-MANJARO
Disk:
Total: 16677187584
Free: 16677003264
RAM:
MemTotal: 31.1GiB
MemAvailable: 20.6GiB
Bottles_envs: null
Troubleshooting Logs
F: Not sharing "/usr/share/icons" with sandbox: Path "/usr" is reserved by Flatpak
18:47:30 (INFO) Launching with URI: None
18:47:30 (INFO) [Activate] request received.
18:47:30 (INFO) Bottles Started!
MESA-INTEL: warning: ../src/intel/vulkan/anv_formats.c:802: FINISHME: support YUV colorspace with DRM format modifiers
MESA-INTEL: warning: ../src/intel/vulkan/anv_formats.c:834: FINISHME: support more multi-planar formats with DRM modifiers
(bottles:2): Gdk-WARNING **: 18:47:31.129: ../gdk/wayland/gdkcursor-wayland.c:210 cursor image size (32) not an integer multiple of theme size (24)
(bottles:2): Gdk-WARNING **: 18:47:31.132: ../gdk/wayland/gdkcursor-wayland.c:210 cursor image size (64) not an integer multiple of theme size (24)
18:47:31 (INFO) Performing Bottles checks…
18:47:31 (INFO) Dxvks found:
- dxvk-async-2.0
- dxvk-gplasync-v2.5.3-1
- dxvk-2.2
- dxvk-2.3.1
- dxvk-2.5.3
18:47:31 (INFO) Vkd3ds found:
- vkd3d-proton-2.14.1
- vkd3d-proton-2.9
- vkd3d-proton-2.12
18:47:31 (INFO) Nvapis found:
- dxvk-nvapi-v0.7.0
- dxvk-nvapi-v0.8.0
- dxvk-nvapi-v0.6.3
18:47:31 (INFO) Latencyflexs found:
- latencyflex-v0.1.1
18:47:31 (INFO) Runners found:
- soda-9.0-1
- soda-7.0-9
- caffe-9.7
- lutris-ge-lol-p8-12
- wine-ge-proton8-26
- ge-proton9-25
- ge-proton9-7
- sys-wine-10.0
18:47:31 (INFO) Temp directory cleaned successfully!
18:47:31 (INFO) Bottles found:
- Test
- Common
- VPN
- ETL_SERVER
18:47:31 (INFO) Catalog dependencies loaded
18:47:31 (INFO) Catalog installers loaded
18:47:31 (INFO) Catalog components loaded
(bottles:2): Gdk-WARNING **: 18:47:33.344: ../gdk/wayland/gdkcursor-wayland.c:210 cursor image size (64) not an integer multiple of theme size (24)
(bottles:2): Gdk-WARNING **: 18:47:34.866: ../gdk/wayland/gdkcursor-wayland.c:210 cursor image size (64) not an integer multiple of theme size (24)
(bottles:2): Gdk-WARNING **: 18:47:34.866: ../gdk/wayland/gdkcursor-wayland.c:210 cursor image size (64) not an integer multiple of theme size (24)
(bottles:2): Gdk-WARNING **: 18:47:34.867: ../gdk/wayland/gdkcursor-wayland.c:210 cursor image size (64) not an integer multiple of theme size (24)
(bottles:2): Gdk-WARNING **: 18:47:35.352: ../gdk/wayland/gdkcursor-wayland.c:210 cursor image size (64) not an integer multiple of theme size (24)
(bottles:2): Gdk-WARNING **: 18:47:35.359: ../gdk/wayland/gdkcursor-wayland.c:210 cursor image size (64) not an integer multiple of theme size (24)
(bottles:2): Gdk-WARNING **: 18:47:35.502: ../gdk/wayland/gdkcursor-wayland.c:210 cursor image size (64) not an integer multiple of theme size (24)
(bottles:2): Gdk-WARNING **: 18:47:35.502: ../gdk/wayland/gdkcursor-wayland.c:210 cursor image size (64) not an integer multiple of theme size (24)
(bottles:2): Gdk-WARNING **: 18:47:35.516: ../gdk/wayland/gdkcursor-wayland.c:210 cursor image size (64) not an integer multiple of theme size (24)
(bottles:2): Gdk-WARNING **: 18:47:35.543: ../gdk/wayland/gdkcursor-wayland.c:210 cursor image size (64) not an integer multiple of theme size (24)
(bottles:2): Gdk-WARNING **: 18:47:35.888: ../gdk/wayland/gdkcursor-wayland.c:210 cursor image size (64) not an integer multiple of theme size (24)
(bottles:2): Gdk-WARNING **: 18:47:37.402: ../gdk/wayland/gdkcursor-wayland.c:210 cursor image size (64) not an integer multiple of theme size (24)
(bottles:2): Gdk-WARNING **: 18:47:37.587: ../gdk/wayland/gdkcursor-wayland.c:210 cursor image size (64) not an integer multiple of theme size (24)
(bottles:2): Gdk-WARNING **: 18:47:37.588: ../gdk/wayland/gdkcursor-wayland.c:210 cursor image size (64) not an integer multiple of theme size (24)
Additional context
To set up a file association for svg to run the bottled version of Inkscape, I used a .desktop file with the following program and arguments:
Program: /usr/bin/flatpak
Arguments: run --branch=stable --arch=x86_64 --command=inkscape --file-forwarding org.inkscape.Inkscape @@ %F @@