summaryrefslogtreecommitdiffstats
path: root/pdf/out_of_process_instance.cc
diff options
context:
space:
mode:
authorRaymes Khoury <raymes@chromium.org>2015-05-20 12:44:35 +1000
committerRaymes Khoury <raymes@chromium.org>2015-05-20 02:45:25 +0000
commit6c7398af22bba93ac0de286ae9b9a52c76256ad0 (patch)
treee1215964e0e202f3368db129453cabe0289ca9c3 /pdf/out_of_process_instance.cc
parent59495481b1ff51a626d93bc8f4895cd8c675c893 (diff)
downloadchromium_src-6c7398af22bba93ac0de286ae9b9a52c76256ad0.zip
chromium_src-6c7398af22bba93ac0de286ae9b9a52c76256ad0.tar.gz
chromium_src-6c7398af22bba93ac0de286ae9b9a52c76256ad0.tar.bz2
Explicitly destroy PDFEngine in OutOfProcessInstance destructor
During destruction, pdfium may call back into the instance and access members. It would be better if this didn't happen but it isn't strictly wrong and may be necessary as it appears pdfium can run scripts at shutdown. BUG=485855 R=thestig@chromium.org Review URL: https://codereview.chromium.org/1144923002 Cr-Commit-Position: refs/heads/master@{#330684}
Diffstat (limited to 'pdf/out_of_process_instance.cc')
-rw-r--r--pdf/out_of_process_instance.cc3
1 files changed, 3 insertions, 0 deletions
diff --git a/pdf/out_of_process_instance.cc b/pdf/out_of_process_instance.cc
index d8188ad..265c53f 100644
--- a/pdf/out_of_process_instance.cc
+++ b/pdf/out_of_process_instance.cc
@@ -295,6 +295,9 @@ OutOfProcessInstance::OutOfProcessInstance(PP_Instance instance)
OutOfProcessInstance::~OutOfProcessInstance() {
RemovePerInstanceObject(kPPPPdfInterface, this);
+ // Explicitly reset the PDFEngine during destruction as it may call back into
+ // this object.
+ engine_.reset();
}
bool OutOfProcessInstance::Init(uint32_t argc,