Crash communicating between daemon 0.3.48/49 and client 0.3.57/58/59
- PipeWire version (
pipewire --version
): server: 0.3.48 (ubuntu 22.04), client: 0.3.58/59 (flatpak freedesktop sdk) - Desktop Environment: Gnome and Kde
- Kernel version (
uname -r
): ubuntu 22.04 kernels
Description of Problem:
Users report crashes in pipewire when attempting to screenshare on ubuntu 22.04, but only when mixing versions e.g. using flatpak which has a later version of pipewire for the client.
How Reproducible:
Attempt to share a screen/window on gnome or kde on ubuntu 22.04 when using the flatpak com.obsproject.Studio
.
Steps to Reproduce:
- Run ubuntu 22.04
flatpak run com.obsproject.Studio
- Right click the Scenes list in the lower left
- Add a window/screen capture.
- Choose the window/screen to capture in the xdg-desktop-portal dialog
- Observe the crash
Actual Results:
Reported backtrace
#0 0x00007fff9e73821e in impl_send_command () at /usr/lib/x86_64-linux-gnu/libpipewire-0.3.so.0
#1 0x00007fff9e71c9bb in pw_impl_node_set_state () at /usr/lib/x86_64-linux-gnu/libpipewire-0.3.so.0
#2 0x00007fff9c12ea3d in client_node_command () at /usr/lib/x86_64-linux-gnu/pipewire-0.3/libpipewire-module-client-node.so
#3 0x00007fff9c13d474 in client_node_demarshal_command.lto_priv () at /usr/lib/x86_64-linux-gnu/pipewire-0.3/libpipewire-module-client-node.so
#4 0x00007fff9c176738 in process_remote () at /usr/lib/x86_64-linux-gnu/pipewire-0.3/libpipewire-module-protocol-native.so
#5 0x00007fff9c176dc0 in on_remote_data () at /usr/lib/x86_64-linux-gnu/pipewire-0.3/libpipewire-module-protocol-native.so
#6 0x00007fff9e68f3c0 in loop_iterate () at /usr/lib/x86_64-linux-gnu/spa-0.2/support/libspa-support.so
#7 0x00007fff9e73f2bc in do_loop () at /usr/lib/x86_64-linux-gnu/libpipewire-0.3.so.0
#8 0x00007ffff436b1da in start_thread () at /usr/lib/x86_64-linux-gnu/libc.so.6
#9 0x00007ffff43f3d84 in clone () at /usr/lib/x86_64-linux-gnu/libc.so.6
Expected Results:
That pipewire doesnt crash.
Additional Info (as attachments):
Sorry but I do not have a system to reproduce this, so i can only provide what our users have provided.