diff options
author | Tom Sepez <tsepez@chromium.org> | 2016-03-04 13:43:46 -0800 |
---|---|---|
committer | Tom Sepez <tsepez@chromium.org> | 2016-03-04 13:43:46 -0800 |
commit | 297b515e3d53095e36991480a194b54ce887757b (patch) | |
tree | b9b6be50cd9264f18df5264fb5fabe3c7e502ba0 /fpdfsdk/src/javascript/JS_Runtime.h | |
parent | c91f42a7ec3fdc57c76a9b175914ecfbd24a9a03 (diff) | |
download | pdfium-297b515e3d53095e36991480a194b54ce887757b.tar.xz |
Re-land "Only place primitive objects on the V8 global template."
This reverts commit 1a35d55dd6b0d1ea1918e2d6a6c25faf599ba168.
Prevent handles from being destructed after v8 is gone.
BUG=pdfium:419
R=ochang@chromium.org
Review URL: https://codereview.chromium.org/1761073006 .
Diffstat (limited to 'fpdfsdk/src/javascript/JS_Runtime.h')
-rw-r--r-- | fpdfsdk/src/javascript/JS_Runtime.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/fpdfsdk/src/javascript/JS_Runtime.h b/fpdfsdk/src/javascript/JS_Runtime.h index 6fc3894f44..8215b88994 100644 --- a/fpdfsdk/src/javascript/JS_Runtime.h +++ b/fpdfsdk/src/javascript/JS_Runtime.h @@ -58,6 +58,9 @@ class CJS_Runtime : public IJS_Runtime { v8::Isolate* GetIsolate() const { return m_isolate; } v8::Local<v8::Context> NewJSContext(); + void SetConstArray(const CFX_WideString& name, v8::Local<v8::Array> array); + v8::Local<v8::Array> GetConstArray(const CFX_WideString& name); + #ifdef PDF_ENABLE_XFA FX_BOOL GetHValueByName(const CFX_ByteStringC& utf8Name, FXJSE_HVALUE hValue) override; @@ -80,6 +83,7 @@ class CJS_Runtime : public IJS_Runtime { bool m_isolateManaged; v8::Global<v8::Context> m_context; std::vector<v8::Global<v8::Object>*> m_StaticObjects; + std::map<CFX_WideString, v8::Global<v8::Array>> m_ConstArrays; std::set<Observer*> m_observers; }; |