diff options
author | dsinclair <dsinclair@chromium.org> | 2016-06-09 11:49:22 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-06-09 11:49:22 -0700 |
commit | 3cace320e07bb954710c50fc7634ca3a8f3eda38 (patch) | |
tree | 83f38f491e9cdc1f9bda3935f3f845528434864a /xfa/fxfa/parser/xfa_script_imp.cpp | |
parent | 2f5582f46dce2abfe9d75ea5f885a2ce0a4c10d2 (diff) | |
download | pdfium-3cace320e07bb954710c50fc7634ca3a8f3eda38.tar.xz |
Change CFXJSE_Context::GetGlobalObject to return
This Cl changes CFXJSE_Context::GetGlobalObject to return a
std::unique_ptr<CFXJSE_Value> instead of accepting a CFXJSE_Value out parameter.
All usages created the CFXJSE_Value with the same runtime as the caller.
Review-Url: https://codereview.chromium.org/2056733003
Diffstat (limited to 'xfa/fxfa/parser/xfa_script_imp.cpp')
-rw-r--r-- | xfa/fxfa/parser/xfa_script_imp.cpp | 17 |
1 files changed, 4 insertions, 13 deletions
diff --git a/xfa/fxfa/parser/xfa_script_imp.cpp b/xfa/fxfa/parser/xfa_script_imp.cpp index 245ea8bca4..fe8400515f 100644 --- a/xfa/fxfa/parser/xfa_script_imp.cpp +++ b/xfa/fxfa/parser/xfa_script_imp.cpp @@ -502,10 +502,7 @@ FX_BOOL CXFA_ScriptContext::QueryVariableValue( FX_BOOL bRes = FALSE; CFXJSE_Context* pVariableContext = static_cast<CFXJSE_Context*>(lpVariables); - std::unique_ptr<CFXJSE_Value> pObject( - new CFXJSE_Value(pVariableContext->GetRuntime())); - pVariableContext->GetGlobalObject(pObject.get()); - + std::unique_ptr<CFXJSE_Value> pObject = pVariableContext->GetGlobalObject(); std::unique_ptr<CFXJSE_Value> hVariableValue(new CFXJSE_Value(m_pIsolate)); if (!bGetter) { pObject->SetObjectOwnProperty(szPropName, pValue); @@ -529,11 +526,8 @@ void CXFA_ScriptContext::ReleaseVariablesMap() { CXFA_Object* pScriptNode; CFXJSE_Context* pVariableContext = nullptr; m_mapVariableToContext.GetNextAssoc(ps, pScriptNode, pVariableContext); - std::unique_ptr<CFXJSE_Value> pObject( - new CFXJSE_Value(pVariableContext->GetRuntime())); - pVariableContext->GetGlobalObject(pObject.get()); - delete ToThisProxy(pObject.get(), nullptr); + delete ToThisProxy(pVariableContext->GetGlobalObject().get(), nullptr); delete pVariableContext; } m_mapVariableToContext.RemoveAll(); @@ -545,14 +539,11 @@ void CXFA_ScriptContext::DefineJsClass() { void CXFA_ScriptContext::RemoveBuiltInObjs(CFXJSE_Context* pContext) const { static const CFX_ByteStringC OBJ_NAME[2] = {"Number", "Date"}; - std::unique_ptr<CFXJSE_Value> pObject( - new CFXJSE_Value(pContext->GetRuntime())); - pContext->GetGlobalObject(pObject.get()); - + std::unique_ptr<CFXJSE_Value> pObject = pContext->GetGlobalObject(); std::unique_ptr<CFXJSE_Value> hProp(new CFXJSE_Value(m_pIsolate)); for (int i = 0; i < 2; ++i) { if (pObject->GetObjectProperty(OBJ_NAME[i], hProp.get())) - pObject.get()->DeleteObjectProperty(OBJ_NAME[i]); + pObject->DeleteObjectProperty(OBJ_NAME[i]); } } CFXJSE_Class* CXFA_ScriptContext::GetJseNormalClass() { |