From dfa2c9939a85ad1c01ef858b21942ab3773dcf27 Mon Sep 17 00:00:00 2001 From: Jochen Eisinger Date: Tue, 19 May 2015 00:38:00 +0200 Subject: Merge V8 API updates to xfa branch Set pointers in internal fields directly instead of wrapping them Review URL: https://codereview.chromium.org/1139853003 Use phantom handles instead of weak handles Review URL: https://codereview.chromium.org/1129253004 Replace deprecated with non-deprecated V8 APIs Review URL: https://codereview.chromium.org/1126203010 Add myself to OWNERS file Review URL: https://codereview.chromium.org/1133333005 Replace v8::Handle with v8::Local and v8::Persistent with v8::Global Review URL: https://codereview.chromium.org/1138823004 TBR=tsepez@chromium.org BUG= Review URL: https://codereview.chromium.org/1140033004 --- fpdfsdk/src/javascript/JS_Value.cpp | 67 +++++++++++++++++++------------------ 1 file changed, 34 insertions(+), 33 deletions(-) (limited to 'fpdfsdk/src/javascript/JS_Value.cpp') diff --git a/fpdfsdk/src/javascript/JS_Value.cpp b/fpdfsdk/src/javascript/JS_Value.cpp index 1b36f314ca..0943802508 100644 --- a/fpdfsdk/src/javascript/JS_Value.cpp +++ b/fpdfsdk/src/javascript/JS_Value.cpp @@ -15,7 +15,7 @@ CJS_Value::CJS_Value(v8::Isolate* isolate) : m_eType(VT_unknown),m_isolate(isolate) { } -CJS_Value::CJS_Value(v8::Isolate* isolate, v8::Handle pValue,FXJSVALUETYPE t) : +CJS_Value::CJS_Value(v8::Isolate* isolate, v8::Local pValue,FXJSVALUETYPE t) : m_pValue(pValue), m_eType(t), m_isolate(isolate) { } @@ -76,7 +76,7 @@ CJS_Value::~CJS_Value() { } -void CJS_Value::Attach(v8::Handle pValue,FXJSVALUETYPE t) +void CJS_Value::Attach(v8::Local pValue,FXJSVALUETYPE t) { m_pValue = pValue; m_eType = t; @@ -90,7 +90,7 @@ void CJS_Value::Attach(CJS_Value *pValue) void CJS_Value::Detach() { - m_pValue = v8::Handle(); + m_pValue = v8::Local(); m_eType = VT_unknown; } @@ -98,17 +98,17 @@ void CJS_Value::Detach() int CJS_Value::ToInt() const { - return JS_ToInt32(m_pValue); + return JS_ToInt32(m_isolate, m_pValue); } bool CJS_Value::ToBool() const { - return JS_ToBoolean(m_pValue); + return JS_ToBoolean(m_isolate, m_pValue); } double CJS_Value::ToDouble() const { - return JS_ToNumber(m_pValue); + return JS_ToNumber(m_isolate, m_pValue); } float CJS_Value::ToFloat() const @@ -118,18 +118,18 @@ float CJS_Value::ToFloat() const CJS_Object* CJS_Value::ToCJSObject() const { - v8::Handle pObj = JS_ToObject(m_pValue); + v8::Local pObj = JS_ToObject(m_isolate, m_pValue); return (CJS_Object*)JS_GetPrivate(m_isolate, pObj); } -v8::Handle CJS_Value::ToV8Object() const +v8::Local CJS_Value::ToV8Object() const { - return JS_ToObject(m_pValue); + return JS_ToObject(m_isolate, m_pValue); } CFX_WideString CJS_Value::ToCFXWideString() const { - return JS_ToString(m_pValue); + return JS_ToString(m_isolate, m_pValue); } CFX_ByteString CJS_Value::ToCFXByteString() const @@ -137,16 +137,16 @@ CFX_ByteString CJS_Value::ToCFXByteString() const return CFX_ByteString::FromUnicode(ToCFXWideString()); } -v8::Handle CJS_Value::ToV8Value() const +v8::Local CJS_Value::ToV8Value() const { return m_pValue; } -v8::HandleCJS_Value::ToV8Array() const +v8::LocalCJS_Value::ToV8Array() const { if (IsArrayObject()) - return v8::Handle::Cast(JS_ToObject(m_pValue)); - return v8::Handle(); + return v8::Local::Cast(JS_ToObject(m_isolate, m_pValue)); + return v8::Local(); } /* ---------------------------------------------------------------------------------------- */ @@ -178,7 +178,7 @@ void CJS_Value::operator = (float fValue) m_eType = VT_number; } -void CJS_Value::operator =(v8::Handle pObj) +void CJS_Value::operator =(v8::Local pObj) { m_pValue = JS_NewObject(m_isolate,pObj); @@ -221,7 +221,7 @@ void CJS_Value::operator = (FX_LPCSTR pStr) void CJS_Value::operator = (CJS_Array & array) { - m_pValue = JS_NewObject2(m_isolate,(v8::Handle)array); + m_pValue = JS_NewObject2(m_isolate,(v8::Local)array); m_eType = VT_object; } @@ -238,6 +238,7 @@ void CJS_Value::operator = (CJS_Value value) m_pValue = value.ToV8Value(); m_eType = value.m_eType; + m_isolate = value.m_isolate; } /* ---------------------------------------------------------------------------------------- */ @@ -272,7 +273,7 @@ FX_BOOL CJS_Value::ConvertToArray(CJS_Array &array) const { if (IsArrayObject()) { - array.Attach(JS_ToArray(m_pValue)); + array.Attach(JS_ToArray(m_isolate, m_pValue)); return TRUE; } @@ -460,7 +461,7 @@ void CJS_PropValue::operator<<(CJS_Date &date) CJS_Value::operator=(date); } -CJS_PropValue::operator v8::Handle() const +CJS_PropValue::operator v8::Local() const { return m_pValue; } @@ -474,7 +475,7 @@ CJS_Array::~CJS_Array() { } -void CJS_Array::Attach(v8::Handle pArray) +void CJS_Array::Attach(v8::Local pArray) { m_pArray = pArray; } @@ -488,7 +489,7 @@ void CJS_Array::GetElement(unsigned index,CJS_Value &value) { if (m_pArray.IsEmpty()) return; - v8::Handle p = JS_GetArrayElemnet(m_pArray,index); + v8::Local p = JS_GetArrayElement(m_isolate, m_pArray,index); value.Attach(p,VT_object); } @@ -497,7 +498,7 @@ void CJS_Array::SetElement(unsigned index,CJS_Value value) if (m_pArray.IsEmpty()) m_pArray = JS_NewArray(m_isolate); - JS_PutArrayElement(m_pArray, index, value.ToV8Value(), value.GetType()); + JS_PutArrayElement(m_isolate, m_pArray, index, value.ToV8Value(), value.GetType()); } int CJS_Array::GetLength() @@ -507,7 +508,7 @@ int CJS_Array::GetLength() return JS_GetArrayLength(m_pArray); } -CJS_Array:: operator v8::Handle() +CJS_Array:: operator v8::Local() { if (m_pArray.IsEmpty()) m_pArray = JS_NewArray(m_isolate); @@ -545,10 +546,10 @@ CJS_Date::~CJS_Date() FX_BOOL CJS_Date::IsValidDate() { if(m_pDate.IsEmpty()) return FALSE; - return !JS_PortIsNan(JS_ToNumber(m_pDate)); + return !JS_PortIsNan(JS_ToNumber(m_isolate, m_pDate)); } -void CJS_Date::Attach(v8::Handle pDate) +void CJS_Date::Attach(v8::Local pDate) { m_pDate = pDate; } @@ -556,7 +557,7 @@ void CJS_Date::Attach(v8::Handle pDate) int CJS_Date::GetYear() { if (IsValidDate()) - return JS_GetYearFromTime(JS_LocalTime(JS_ToNumber(m_pDate))); + return JS_GetYearFromTime(JS_LocalTime(JS_ToNumber(m_isolate, m_pDate))); return 0; } @@ -570,7 +571,7 @@ void CJS_Date::SetYear(int iYear) int CJS_Date::GetMonth() { if (IsValidDate()) - return JS_GetMonthFromTime(JS_LocalTime(JS_ToNumber(m_pDate))); + return JS_GetMonthFromTime(JS_LocalTime(JS_ToNumber(m_isolate, m_pDate))); return 0; } @@ -586,7 +587,7 @@ void CJS_Date::SetMonth(int iMonth) int CJS_Date::GetDay() { if (IsValidDate()) - return JS_GetDayFromTime(JS_LocalTime(JS_ToNumber(m_pDate))); + return JS_GetDayFromTime(JS_LocalTime(JS_ToNumber(m_isolate, m_pDate))); return 0; } @@ -602,7 +603,7 @@ void CJS_Date::SetDay(int iDay) int CJS_Date::GetHours() { if (IsValidDate()) - return JS_GetHourFromTime(JS_LocalTime(JS_ToNumber(m_pDate))); + return JS_GetHourFromTime(JS_LocalTime(JS_ToNumber(m_isolate, m_pDate))); return 0; } @@ -616,7 +617,7 @@ void CJS_Date::SetHours(int iHours) int CJS_Date::GetMinutes() { if (IsValidDate()) - return JS_GetMinFromTime(JS_LocalTime(JS_ToNumber(m_pDate))); + return JS_GetMinFromTime(JS_LocalTime(JS_ToNumber(m_isolate, m_pDate))); return 0; } @@ -630,7 +631,7 @@ void CJS_Date::SetMinutes(int minutes) int CJS_Date::GetSeconds() { if (IsValidDate()) - return JS_GetSecFromTime(JS_LocalTime(JS_ToNumber(m_pDate))); + return JS_GetSecFromTime(JS_LocalTime(JS_ToNumber(m_isolate, m_pDate))); return 0; } @@ -641,7 +642,7 @@ void CJS_Date::SetSeconds(int seconds) JS_ValueCopy(m_pDate,JS_NewDate(m_isolate,date)); } -CJS_Date::operator v8::Handle() +CJS_Date::operator v8::Local() { return m_pDate; } @@ -650,12 +651,12 @@ CJS_Date::operator double() const { if(m_pDate.IsEmpty()) return 0.0; - return JS_ToNumber(m_pDate); + return JS_ToNumber(m_isolate, m_pDate); } CFX_WideString CJS_Date::ToString() const { if(m_pDate.IsEmpty()) return L""; - return JS_ToString(m_pDate); + return JS_ToString(m_isolate, m_pDate); } -- cgit v1.2.3