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
diff --git a/fpdfsdk/cpdfsdk_pageview.h b/fpdfsdk/cpdfsdk_pageview.h
index fe40300..f837ba5 100644
--- a/fpdfsdk/cpdfsdk_pageview.h
+++ b/fpdfsdk/cpdfsdk_pageview.h
@@ -98,6 +98,10 @@
 
   void SetLock(FX_BOOL bLocked) { m_bLocked = bLocked; }
   FX_BOOL IsLocked() { return m_bLocked; }
+
+  void SetBeingDestroyed() { m_bBeingDestroyed = true; }
+  bool IsBeingDestroyed() const { return m_bBeingDestroyed; }
+
 #ifndef PDF_ENABLE_XFA
   bool OwnsPage() const { return m_bOwnsPage; }
   void TakePageOwnership() { m_bOwnsPage = true; }
@@ -120,6 +124,7 @@
   FX_BOOL m_bOnWidget;
   FX_BOOL m_bValid;
   FX_BOOL m_bLocked;
+  bool m_bBeingDestroyed;
 };
 
 #endif  // FPDFSDK_CPDFSDK_PAGEVIEW_H_