Commit 6c2b1efa authored by Lei Zhang's avatar Lei Zhang Committed by Commit Bot

Prevent double deletion in PrintRenderFrameHelper.

Bug: 1134960
Change-Id: I765cc3f1463fce4b8d7c2ca99f429031566a4645
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2454732Reviewed-by: default avatarJesse Schettler <jschettler@chromium.org>
Commit-Queue: Lei Zhang <thestig@chromium.org>
Cr-Commit-Position: refs/heads/master@{#814756}
parent 47d47f7c
...@@ -2071,8 +2071,10 @@ void PrintRenderFrameHelper::IPCReceived() { ...@@ -2071,8 +2071,10 @@ void PrintRenderFrameHelper::IPCReceived() {
void PrintRenderFrameHelper::IPCProcessed() { void PrintRenderFrameHelper::IPCProcessed() {
--ipc_nesting_level_; --ipc_nesting_level_;
if (ipc_nesting_level_ == 0 && render_frame_gone_) if (ipc_nesting_level_ == 0 && render_frame_gone_ && !delete_pending_) {
delete_pending_ = true;
base::ThreadTaskRunnerHandle::Get()->DeleteSoon(FROM_HERE, this); base::ThreadTaskRunnerHandle::Get()->DeleteSoon(FROM_HERE, this);
}
} }
bool PrintRenderFrameHelper::InitPrintSettings(bool fit_to_paper_size) { bool PrintRenderFrameHelper::InitPrintSettings(bool fit_to_paper_size) {
......
...@@ -637,6 +637,7 @@ class PrintRenderFrameHelper ...@@ -637,6 +637,7 @@ class PrintRenderFrameHelper
bool is_scripted_preview_delayed_ = false; bool is_scripted_preview_delayed_ = false;
int ipc_nesting_level_ = 0; int ipc_nesting_level_ = 0;
bool render_frame_gone_ = false; bool render_frame_gone_ = false;
bool delete_pending_ = false;
// If tagged PDF exporting is enabled, we also need to capture an // If tagged PDF exporting is enabled, we also need to capture an
// accessibility tree and store it in the metafile. AXTreeSnapshotter should // accessibility tree and store it in the metafile. AXTreeSnapshotter should
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment