Browse Source

fix: check for shared memory handle validity before closing, remove DebugDumpData call (#15402)

Heilig Benedek 6 years ago
parent
commit
bdda248194

+ 0 - 1
chromium_src/chrome/browser/printing/print_view_manager_base.cc

@@ -165,7 +165,6 @@ void PrintViewManagerBase::OnDidPrintPage(
         reinterpret_cast<const unsigned char*>(shared_buf.memory()),
         params.data_size);
 
-    document->DebugDumpData(bytes.get(), FILE_PATH_LITERAL(".pdf"));
     print_job_->StartPdfToEmfConversion(
         bytes, params.page_size, params.content_area, print_text_with_gdi);
   }

+ 3 - 1
chromium_src/chrome/renderer/printing/print_web_view_helper_pdf_win.cc

@@ -106,7 +106,9 @@ bool PrintWebViewHelper::PrintPagesNative(blink::WebLocalFrame* frame,
     printed_page_params.content_area = content_area_in_dpi[i];
     Send(new PrintHostMsg_DidPrintPage(routing_id(), printed_page_params));
     // Send the rest of the pages with an invalid metafile handle.
-    printed_page_params.metafile_data_handle.Close();
+    if (printed_page_params.metafile_data_handle.IsValid()) {
+      printed_page_params.metafile_data_handle.Close();
+    }
     printed_page_params.metafile_data_handle = base::SharedMemoryHandle();
   }
   return true;