Index: fpdfsdk/src/javascript/JS_Runtime.cpp |
diff --git a/fpdfsdk/src/javascript/JS_Runtime.cpp b/fpdfsdk/src/javascript/JS_Runtime.cpp |
index 4c502a7b757ea453a3df884107053c4f4be50e7d..707551adbe31178d7a5240971fb468d5982453e9 100644 |
--- a/fpdfsdk/src/javascript/JS_Runtime.cpp |
+++ b/fpdfsdk/src/javascript/JS_Runtime.cpp |
@@ -45,7 +45,8 @@ CJS_Runtime::CJS_Runtime(CPDFDoc_Environment* pApp) |
FXJS_Initialize(embedderDataSlot, pExternalIsolate); |
} |
m_isolateManaged = FXJS_GetIsolate(&m_isolate); |
- DefineJSObjects(); |
+ if (m_isolateManaged || FXJS_GlobalIsolateRefCount() == 0) |
+ DefineJSObjects(); |
CJS_Context* pContext = (CJS_Context*)NewContext(); |
FXJS_InitializeRuntime(GetIsolate(), this, pContext, m_context); |