summaryrefslogtreecommitdiff
path: root/fpdfsdk/cpdfsdk_pageview.cpp
diff options
context:
space:
mode:
authordsinclair <dsinclair@chromium.org>2016-10-03 13:02:27 -0700
committerCommit bot <commit-bot@chromium.org>2016-10-03 13:02:27 -0700
commitbcf46238b4533a9da91f4fa5d7248bbc85511dbd (patch)
tree755c25e5ffcf6eec6461097e0d4d366bde65a7c8 /fpdfsdk/cpdfsdk_pageview.cpp
parentd61f958385be285f3f3897ef3a3f010048608f1c (diff)
downloadpdfium-bcf46238b4533a9da91f4fa5d7248bbc85511dbd.tar.xz
Guard against double deletion of page views.
This CL adds a |IsBeingDestroyed| flag into the CPDFSDK_PageView. We then bail out of the pageview removal code early if the flag is set. BUG=chromium:652103 Review-Url: https://codereview.chromium.org/2384243002
Diffstat (limited to 'fpdfsdk/cpdfsdk_pageview.cpp')
-rw-r--r--fpdfsdk/cpdfsdk_pageview.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/fpdfsdk/cpdfsdk_pageview.cpp b/fpdfsdk/cpdfsdk_pageview.cpp
index beba7b68f4..2e7e6c0ad6 100644
--- a/fpdfsdk/cpdfsdk_pageview.cpp
+++ b/fpdfsdk/cpdfsdk_pageview.cpp
@@ -39,7 +39,8 @@ CPDFSDK_PageView::CPDFSDK_PageView(CPDFSDK_Document* pSDKDoc,
m_bExitWidget(FALSE),
m_bOnWidget(FALSE),
m_bValid(FALSE),
- m_bLocked(FALSE) {
+ m_bLocked(FALSE),
+ m_bBeingDestroyed(false) {
CPDFSDK_InterForm* pInterForm = pSDKDoc->GetInterForm();
if (pInterForm) {
CPDF_InterForm* pPDFInterForm = pInterForm->GetInterForm();