From 88b6686f6e56a01dab0172f4b3129ab7ae0cd8d8 Mon Sep 17 00:00:00 2001 From: tsepez Date: Thu, 14 Jul 2016 12:07:48 -0700 Subject: Do not try to v8::Object::Clone() any objects v8::Object::Clone() is deprecated, and gets us into trouble with some corner cases. Create a new handle to the same object instead. Remove FXJS_NewObject() and FXJS_NewObject2(), and replace with direct assignments. Pass isolate to FXJS_NewNull() while were at it, even though not needed, for consistency with all remaining FXJS_New*() calls. BUG=628106 R=jochen@chromium.org Review-Url: https://codereview.chromium.org/2151023002 --- fpdfsdk/javascript/JS_Value.cpp | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'fpdfsdk/javascript') diff --git a/fpdfsdk/javascript/JS_Value.cpp b/fpdfsdk/javascript/JS_Value.cpp index 53d6d59833..6bc45c555d 100644 --- a/fpdfsdk/javascript/JS_Value.cpp +++ b/fpdfsdk/javascript/JS_Value.cpp @@ -186,7 +186,7 @@ void CJS_Value::operator=(float fValue) { } void CJS_Value::operator=(v8::Local pObj) { - m_pValue = FXJS_NewObject(m_pJSRuntime->GetIsolate(), pObj); + m_pValue = pObj; m_eType = VT_fxobject; } @@ -208,7 +208,7 @@ void CJS_Value::operator=(const FX_WCHAR* pWstr) { } void CJS_Value::SetNull() { - m_pValue = FXJS_NewNull(); + m_pValue = FXJS_NewNull(m_pJSRuntime->GetIsolate()); m_eType = VT_null; } @@ -217,8 +217,7 @@ void CJS_Value::operator=(const FX_CHAR* pStr) { } void CJS_Value::operator=(CJS_Array& array) { - m_pValue = - FXJS_NewObject2(m_pJSRuntime->GetIsolate(), (v8::Local)array); + m_pValue = static_cast>(array); m_eType = VT_object; } -- cgit v1.2.3