summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--fpdfsdk/include/jsapi/fxjs_v8.h1
-rw-r--r--fpdfsdk/src/javascript/JS_Object.cpp2
-rw-r--r--fpdfsdk/src/javascript/global.cpp11
-rw-r--r--fpdfsdk/src/jsapi/fxjs_v8.cpp9
4 files changed, 6 insertions, 17 deletions
diff --git a/fpdfsdk/include/jsapi/fxjs_v8.h b/fpdfsdk/include/jsapi/fxjs_v8.h
index 13fbb02a72..c4a31bbf07 100644
--- a/fpdfsdk/include/jsapi/fxjs_v8.h
+++ b/fpdfsdk/include/jsapi/fxjs_v8.h
@@ -136,7 +136,6 @@ v8::Local<v8::Object> FXJS_NewFxDynamicObj(v8::Isolate* pIsolate,
int nObjDefnID);
v8::Local<v8::Object> FXJS_GetThisObj(v8::Isolate* pIsolate);
int FXJS_GetObjDefnID(v8::Local<v8::Object> pObj);
-v8::Isolate* FXJS_GetRuntime(v8::Local<v8::Object> pObj);
const wchar_t* FXJS_GetTypeof(v8::Local<v8::Value> pObj);
void FXJS_SetPrivate(v8::Isolate* pIsolate,
diff --git a/fpdfsdk/src/javascript/JS_Object.cpp b/fpdfsdk/src/javascript/JS_Object.cpp
index 883ecc82ae..1e649ae791 100644
--- a/fpdfsdk/src/javascript/JS_Object.cpp
+++ b/fpdfsdk/src/javascript/JS_Object.cpp
@@ -61,7 +61,7 @@ void DisposeObject(const v8::WeakCallbackInfo<CJS_Object>& data) {
}
CJS_Object::CJS_Object(v8::Local<v8::Object> pObject) {
- m_pIsolate = pObject->CreationContext()->GetIsolate();
+ m_pIsolate = pObject->GetIsolate();
m_pV8Object.Reset(m_pIsolate, pObject);
}
diff --git a/fpdfsdk/src/javascript/global.cpp b/fpdfsdk/src/javascript/global.cpp
index cd0048d95b..4dd93c150f 100644
--- a/fpdfsdk/src/javascript/global.cpp
+++ b/fpdfsdk/src/javascript/global.cpp
@@ -259,7 +259,7 @@ void JSGlobalAlternate::UpdateGlobalPersistentVariables() {
pData->data.sData.UTF8Decode().c_str());
break;
case JS_GLOBALDATA_TYPE_OBJECT: {
- v8::Isolate* pRuntime = FXJS_GetRuntime(m_pJSObject->ToV8Object());
+ v8::Isolate* pRuntime = m_pJSObject->ToV8Object()->GetIsolate();
v8::Local<v8::Object> pObj = FXJS_NewFxDynamicObj(pRuntime, NULL, -1);
PutObjectProperty(pObj, &pData->data);
@@ -324,8 +324,7 @@ void JSGlobalAlternate::CommitGlobalPersisitentVariables(IJS_Context* cc) {
void JSGlobalAlternate::ObjectToArray(IJS_Context* cc,
v8::Local<v8::Object> pObj,
CJS_GlobalVariableArray& array) {
- v8::Local<v8::Context> context = pObj->CreationContext();
- v8::Isolate* isolate = context->GetIsolate();
+ v8::Isolate* isolate = pObj->GetIsolate();
CJS_Runtime* pRuntime = CJS_Runtime::FromContext(cc);
v8::Local<v8::Array> pKeyList = FXJS_GetObjectElementNames(isolate, pObj);
@@ -401,7 +400,7 @@ void JSGlobalAlternate::PutObjectProperty(v8::Local<v8::Object> pObj,
pObjData->sData.UTF8Decode().c_str());
break;
case JS_GLOBALDATA_TYPE_OBJECT: {
- v8::Isolate* pRuntime = FXJS_GetRuntime(m_pJSObject->ToV8Object());
+ v8::Isolate* pRuntime = m_pJSObject->ToV8Object()->GetIsolate();
v8::Local<v8::Object> pNewObj =
FXJS_NewFxDynamicObj(pRuntime, NULL, -1);
PutObjectProperty(pNewObj, pObjData);
@@ -454,7 +453,7 @@ FX_BOOL JSGlobalAlternate::SetGlobalVariables(const FX_CHAR* propname,
pTemp->sData = sData;
} break;
case JS_GLOBALDATA_TYPE_OBJECT: {
- pTemp->pData.Reset(FXJS_GetRuntime(pData), pData);
+ pTemp->pData.Reset(pData->GetIsolate(), pData);
} break;
case JS_GLOBALDATA_TYPE_NULL:
break;
@@ -488,7 +487,7 @@ FX_BOOL JSGlobalAlternate::SetGlobalVariables(const FX_CHAR* propname,
case JS_GLOBALDATA_TYPE_OBJECT: {
pNewData = new JSGlobalData;
pNewData->nType = JS_GLOBALDATA_TYPE_OBJECT;
- pNewData->pData.Reset(FXJS_GetRuntime(pData), pData);
+ pNewData->pData.Reset(pData->GetIsolate(), pData);
pNewData->bPersistent = bDefaultPersistent;
} break;
case JS_GLOBALDATA_TYPE_NULL: {
diff --git a/fpdfsdk/src/jsapi/fxjs_v8.cpp b/fpdfsdk/src/jsapi/fxjs_v8.cpp
index 2fb3e13064..8180f76e67 100644
--- a/fpdfsdk/src/jsapi/fxjs_v8.cpp
+++ b/fpdfsdk/src/jsapi/fxjs_v8.cpp
@@ -442,15 +442,6 @@ int FXJS_GetObjDefnID(v8::Local<v8::Object> pObj) {
return -1;
}
-v8::Isolate* FXJS_GetRuntime(v8::Local<v8::Object> pObj) {
- if (pObj.IsEmpty())
- return NULL;
- v8::Local<v8::Context> context = pObj->CreationContext();
- if (context.IsEmpty())
- return NULL;
- return context->GetIsolate();
-}
-
void FXJS_Error(v8::Isolate* pIsolate, const CFX_WideString& message) {
// Conversion from pdfium's wchar_t wide-strings to v8's uint16_t
// wide-strings isn't handled by v8, so use UTF8 as a common