diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 00:47:55 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 00:47:55 +0000 |
commit | 26a029d407be480d791972afb5975cf62c9360a6 (patch) | |
tree | f435a8308119effd964b339f76abb83a57c29483 /third_party/libwebrtc/moz-patch-stack/0096.patch | |
parent | Initial commit. (diff) | |
download | firefox-26a029d407be480d791972afb5975cf62c9360a6.tar.xz firefox-26a029d407be480d791972afb5975cf62c9360a6.zip |
Adding upstream version 124.0.1.upstream/124.0.1
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'third_party/libwebrtc/moz-patch-stack/0096.patch')
-rw-r--r-- | third_party/libwebrtc/moz-patch-stack/0096.patch | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/third_party/libwebrtc/moz-patch-stack/0096.patch b/third_party/libwebrtc/moz-patch-stack/0096.patch new file mode 100644 index 0000000000..3b8608fa76 --- /dev/null +++ b/third_party/libwebrtc/moz-patch-stack/0096.patch @@ -0,0 +1,41 @@ +From: Andreas Pehrson <apehrson@mozilla.com> +Date: Wed, 18 Oct 2023 17:21:00 +0000 +Subject: Bug 1859786 - Fix lock annotation warning in Mozilla-specific edit on + top of video_capture_impl.cc. r=webrtc-reviewers,mjf + +The annotations were added in M116: +https://hg.mozilla.org/mozilla-central/rev/9cd372df013948ad822ae936752d725d77474fb5 + +Note that this was never unsafe, since _dataCallbacks is only written on the +same thread that we are patching here. This patch however, adds helpful static +analysis. + +Differential Revision: https://phabricator.services.mozilla.com/D191301 +Mercurial Revision: https://hg.mozilla.org/mozilla-central/rev/56ff441b644400f09d2d0453dbd8991ea25db7b1 +--- + modules/video_capture/video_capture_impl.cc | 11 +++++++---- + 1 file changed, 7 insertions(+), 4 deletions(-) + +diff --git a/modules/video_capture/video_capture_impl.cc b/modules/video_capture/video_capture_impl.cc +index 02404697ad..1bddaf824d 100644 +--- a/modules/video_capture/video_capture_impl.cc ++++ b/modules/video_capture/video_capture_impl.cc +@@ -119,11 +119,14 @@ void VideoCaptureImpl::DeRegisterCaptureDataCallback( + } + + int32_t VideoCaptureImpl::StopCaptureIfAllClientsClose() { +- if (_dataCallBacks.empty()) { +- return StopCapture(); +- } else { +- return 0; ++ RTC_DCHECK_RUN_ON(&api_checker_); ++ { ++ MutexLock lock(&api_lock_); ++ if (!_dataCallBacks.empty()) { ++ return 0; ++ } + } ++ return StopCapture(); + } + + int32_t VideoCaptureImpl::DeliverCapturedFrame(VideoFrame& captureFrame) { |