cef/patch/patches/printing_context_2196.patch

42 lines
1.6 KiB
Diff

diff --git chrome/browser/printing/print_job_worker.cc chrome/browser/printing/print_job_worker.cc
index d6b338aa2f5f9..ae5e9f4cf8618 100644
--- chrome/browser/printing/print_job_worker.cc
+++ chrome/browser/printing/print_job_worker.cc
@@ -133,6 +133,7 @@ PrintJobWorker::PrintJobWorker(content::GlobalRenderFrameHostId rfh_id)
ShouldPrintingContextSkipSystemCalls())),
thread_("Printing_Worker") {
DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
+ printing_context_->set_render_ids(rfh_id.child_id, rfh_id.frame_routing_id);
}
PrintJobWorker::~PrintJobWorker() {
diff --git printing/printing_context.h printing/printing_context.h
index 42095172d1406..8bf48be927d2f 100644
--- printing/printing_context.h
+++ printing/printing_context.h
@@ -173,6 +173,13 @@ class COMPONENT_EXPORT(PRINTING) PrintingContext {
int job_id() const { return job_id_; }
+ void set_render_ids(int render_process_id, int render_frame_id) {
+ render_process_id_ = render_process_id;
+ render_frame_id_ = render_frame_id;
+ }
+ int render_process_id() const { return render_process_id_; }
+ int render_frame_id() const { return render_frame_id_; }
+
protected:
explicit PrintingContext(Delegate* delegate);
@@ -219,6 +226,10 @@ class COMPONENT_EXPORT(PRINTING) PrintingContext {
// The job id for the current job. The value is 0 if no jobs are active.
int job_id_;
+ // Routing IDs for the frame that owns this object.
+ int render_process_id_ = 0;
+ int render_frame_id_ = 0;
+
private:
#if BUILDFLAG(ENABLE_OOP_PRINTING)
// If this instance of PrintingContext should skip making any system calls