From cf193b279b47f367b9d5199644d304fa11aa1e6c Mon Sep 17 00:00:00 2001 From: Shelley Vohr Date: Thu, 3 Jul 2025 14:41:19 +0200 Subject: [PATCH] fix: crash on source capture with empty thumbnail size (#47641) --- shell/browser/api/electron_api_desktop_capturer.cc | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/shell/browser/api/electron_api_desktop_capturer.cc b/shell/browser/api/electron_api_desktop_capturer.cc index a2a05bb102bb..f99357a7c62a 100644 --- a/shell/browser/api/electron_api_desktop_capturer.cc +++ b/shell/browser/api/electron_api_desktop_capturer.cc @@ -236,7 +236,8 @@ DesktopCapturer::DesktopListListener::~DesktopListListener() = default; void DesktopCapturer::DesktopListListener::OnDelegatedSourceListSelection() { if (have_thumbnail_) { - std::move(update_callback_).Run(); + content::GetUIThreadTaskRunner({})->PostTask(FROM_HERE, + std::move(update_callback_)); } else { have_selection_ = true; } @@ -249,7 +250,8 @@ void DesktopCapturer::DesktopListListener::OnSourceThumbnailChanged(int index) { have_selection_ = false; // PipeWire returns a single source, so index is not relevant. - std::move(update_callback_).Run(); + content::GetUIThreadTaskRunner({})->PostTask(FROM_HERE, + std::move(update_callback_)); } else { have_thumbnail_ = true; }