summaryrefslogtreecommitdiff
path: root/fxjs/cjs_document.h
diff options
context:
space:
mode:
authorTom Sepez <tsepez@chromium.org>2018-06-04 19:44:37 +0000
committerChromium commit bot <commit-bot@chromium.org>2018-06-04 19:44:37 +0000
commit36aae4fc09a353e01738bf0bbc302a21ba21ed07 (patch)
tree2d9d1cbe2f7c8eeed7aff9fc63a8f8300a25d6b7 /fxjs/cjs_document.h
parent9d3fb11a985a8f2aefbf361c0030c7bce2248b8e (diff)
downloadpdfium-36aae4fc09a353e01738bf0bbc302a21ba21ed07.tar.xz
Make CJS_Objects track CJS_Runtime (and hence the document itself)
Precursor to removing some more v8::Context slot dependency. There's a cost to maintaining the set of observers, but since these objects are tied to V8 lifetimes, not C++ lifetimes, we want to be very wary of the document going away unexpectedly. Change-Id: I579f58a460aa50b88cb861227c9aca9a8a83ce12 Reviewed-on: https://pdfium-review.googlesource.com/33471 Commit-Queue: Tom Sepez <tsepez@chromium.org> Reviewed-by: dsinclair <dsinclair@chromium.org>
Diffstat (limited to 'fxjs/cjs_document.h')
-rw-r--r--fxjs/cjs_document.h10
1 files changed, 5 insertions, 5 deletions
diff --git a/fxjs/cjs_document.h b/fxjs/cjs_document.h
index 179b8eff4c..5172df0e26 100644
--- a/fxjs/cjs_document.h
+++ b/fxjs/cjs_document.h
@@ -23,11 +23,11 @@ class CJS_Document : public CJS_Object {
static int GetObjDefnID();
static void DefineJSObjects(CFXJS_Engine* pEngine);
- explicit CJS_Document(v8::Local<v8::Object> pObject);
+ CJS_Document(v8::Local<v8::Object> pObject, CJS_Runtime* pRuntime);
~CJS_Document() override;
- // CJS_Object
- void InitInstance(IJS_Runtime* pIRuntime) override;
+ // CJS_Object:
+ void InitInstance() override;
void SetFormFillEnv(CPDFSDK_FormFillEnvironment* pFormFillEnv);
CPDFSDK_FormFillEnvironment* GetFormFillEnv() const {
@@ -312,12 +312,12 @@ class CJS_Document : public CJS_Object {
v8::Local<v8::Value> vp,
const ByteString& propName);
- CPDFSDK_FormFillEnvironment::ObservedPtr m_pFormFillEnv;
WideString m_cwBaseURL;
+ CPDFSDK_FormFillEnvironment::ObservedPtr m_pFormFillEnv;
std::list<std::unique_ptr<CJS_DelayData>> m_DelayData;
// Needs to be a std::list for iterator stability.
std::list<WideString> m_IconNames;
- bool m_bDelay;
+ bool m_bDelay = false;
};
#endif // FXJS_CJS_DOCUMENT_H_