Public bug reported:

[Impact]
On Ubuntu 26.04, sharing a single window via the screencast portal fails 
silently in every consumer (Firefox, Chromium). Whole-monitor sharing works; 
picking a window never starts and the portal dies. 26.04 ships 
xdg-desktop-portal-wlr 0.8.1 with PipeWire 1.6.x. The per-window path 
(ext-image-copy-capture) negotiates a variable-framerate stream (framerate == 
0); 0.8.1 then emits an invalid maxFramerate and divides by zero, so 
negotiation exhausts: core error res:-32 "no more output formats" → stream 
error → portal exits.

[Fix]
Two upstream commits, both released in 0.8.2, backported as minimal DEP-3 
patches (no version bump):
- 896cee82 — skip maxFramerate / guard division when framerate == 0 (the 
negotiation fix)
- 459831374 — set READABLE/MAPPABLE buffer flags (prevents a client segfault 
after negotiation succeeds)

Both touch only src/screencast/pipewire_screencast.c (+26 LoC). Debdiff
attached.

[Test Plan]
sway session, share a single window in Meet/Firefox. On 0.8.1 it never starts 
and journalctl --user -u xdg-desktop-portal-wlr shows pipewire: fatal error 
event from core; with the fix the window shares and the stream stays up. 
Whole-monitor sharing must keep working.

[Where problems could occurr]
Confined to screencast format negotiation and buffer flags in the wlr portal; 
cannot affect other portal backends or non-screencast interfaces. The framerate 
change only wraps an existing maxFramerate constraint in if (framerate >
0) and guards a division; worst case would be screencast framerate 
misreporting, visible in the same test. SPA_DATA_FLAG_MAPPABLE is 
#ifdef-guarded. Both patches are verbatim cherry-picks shipped in upstream 
0.8.2 and Debian 0.8.3.

** Affects: xdg-desktop-portal-wlr (Ubuntu)
     Importance: Undecided
         Status: New


** Tags: resolute

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2159516

Title:
  xdg-desktop-portal-wlr: single-window screencast fails on PipeWire
  1.6.x ("no more output formats")

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/xdg-desktop-portal-wlr/+bug/2159516/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to