Files
cef/patch/patches/chrome_browser_printing_oop_osr.patch
Marshall Greenblatt e7320793b6 Update to Chromium version 136.0.7103.0 (#1440670)
- Win: Update to VS 2022 17.13.4 and WinSDK 10.0.26100.3323
2025-04-07 15:38:21 -04:00

22 lines
999 B
Diff

diff --git chrome/browser/printing/print_backend_service_manager.cc chrome/browser/printing/print_backend_service_manager.cc
index 8e75f8b83bc77..19dec27e26680 100644
--- chrome/browser/printing/print_backend_service_manager.cc
+++ chrome/browser/printing/print_backend_service_manager.cc
@@ -75,7 +75,15 @@ PrintBackendServiceManager* g_print_backend_service_manager_singleton = nullptr;
// to support modal dialogs from OOP.
uint32_t NativeViewToUint(gfx::NativeView view) {
#if BUILDFLAG(IS_WIN)
- return base::win::HandleToUint32(views::HWNDForNativeView(view));
+ // |view| will be nullptr with CEF OSR. In that case return the desktop
+ // window handle (same behavior as PrintingContextWin::GetRootWindow) to
+ // avoid a DCHECK in PrintingContextSystemDialogWin::AskUserForSettings
+ // with OOP printing.
+ HWND hwnd = views::HWNDForNativeView(view);
+ if (!hwnd) {
+ hwnd = ::GetDesktopWindow();
+ }
+ return base::win::HandleToUint32(hwnd);
#else
NOTREACHED();
#endif