From 26a029d407be480d791972afb5975cf62c9360a6 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Fri, 19 Apr 2024 02:47:55 +0200 Subject: Adding upstream version 124.0.1. Signed-off-by: Daniel Baumann --- third_party/libwebrtc/moz-patch-stack/0090.patch | 47 ++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 third_party/libwebrtc/moz-patch-stack/0090.patch (limited to 'third_party/libwebrtc/moz-patch-stack/0090.patch') diff --git a/third_party/libwebrtc/moz-patch-stack/0090.patch b/third_party/libwebrtc/moz-patch-stack/0090.patch new file mode 100644 index 0000000000..dfd2faa87d --- /dev/null +++ b/third_party/libwebrtc/moz-patch-stack/0090.patch @@ -0,0 +1,47 @@ +From: stransky +Date: Tue, 29 Aug 2023 12:43:00 +0000 +Subject: Bug 1821629 [Pipewire/DMABuf] Don't create dmabuf backend if it's + disabled r=ng,webrtc-reviewers + +Depends on D172224 + +Differential Revision: https://phabricator.services.mozilla.com/D172229 +Mercurial Revision: https://hg.mozilla.org/mozilla-central/rev/237d19fe96dd7d25b6a817415ee4e6854678d648 +--- + .../linux/wayland/shared_screencast_stream.cc | 9 ++++++--- + 1 file changed, 6 insertions(+), 3 deletions(-) + +diff --git a/modules/desktop_capture/linux/wayland/shared_screencast_stream.cc b/modules/desktop_capture/linux/wayland/shared_screencast_stream.cc +index 22aa355e44..61c6957d27 100644 +--- a/modules/desktop_capture/linux/wayland/shared_screencast_stream.cc ++++ b/modules/desktop_capture/linux/wayland/shared_screencast_stream.cc +@@ -419,7 +419,9 @@ bool SharedScreenCastStreamPrivate::StartScreenCastStream( + RTC_LOG(LS_ERROR) << "Unable to open PipeWire library"; + return false; + } +- egl_dmabuf_ = std::make_unique(); ++ if (mozilla::gfx::IsDMABufEnabled()) { ++ egl_dmabuf_ = std::make_unique(); ++ } + + pw_stream_node_id_ = stream_node_id; + +@@ -508,7 +510,8 @@ bool SharedScreenCastStreamPrivate::StartScreenCastStream( + for (uint32_t format : {SPA_VIDEO_FORMAT_BGRA, SPA_VIDEO_FORMAT_RGBA, + SPA_VIDEO_FORMAT_BGRx, SPA_VIDEO_FORMAT_RGBx}) { + // Modifiers can be used with PipeWire >= 0.3.33 +- if (has_required_pw_client_version && has_required_pw_server_version) { ++ if (egl_dmabuf_ && ++ has_required_pw_client_version && has_required_pw_server_version) { + modifiers_ = egl_dmabuf_->QueryDmaBufModifiers(format); + + if (!modifiers_.empty()) { +@@ -927,7 +930,7 @@ bool SharedScreenCastStreamPrivate::ProcessDMABuffer( + + const uint n_planes = spa_buffer->n_datas; + +- if (!n_planes) { ++ if (!n_planes || !egl_dmabuf_) { + return false; + } + -- cgit v1.2.3