[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc

yurys at chromium.org yurys at chromium.org
Wed Dec 22 11:24:44 UTC 2010


The following commit has been merged in the debian/experimental branch:
commit aff9fe9487e2c9104e9f285eb389baafdb0c902d
Author: yurys at chromium.org <yurys at chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Thu Jul 22 16:03:21 2010 +0000

    2010-07-22  Yury Semikhatsky  <yurys at chromium.org>
    
            Unreviewed. Fix inspector console tests crashes.
    
            * bindings/v8/ScriptValue.cpp:
            (WebCore::v8ToInspectorValue):
            (WebCore::ScriptValue::toInspectorValue): enter v8 context before calling GetPropertyNames
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@63895 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 0c678a6..6074a0e 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,11 @@
+2010-07-22  Yury Semikhatsky  <yurys at chromium.org>
+
+        Unreviewed. Fix inspector console tests crashes.
+
+        * bindings/v8/ScriptValue.cpp:
+        (WebCore::v8ToInspectorValue):
+        (WebCore::ScriptValue::toInspectorValue): enter v8 context before calling GetPropertyNames
+
 2010-07-22  Gyuyoung Kim  <gyuyoung.kim at samsung.com>
 
         Unreviewed build fix.
diff --git a/WebCore/bindings/v8/ScriptValue.cpp b/WebCore/bindings/v8/ScriptValue.cpp
index 449d171..4ae532d 100755
--- a/WebCore/bindings/v8/ScriptValue.cpp
+++ b/WebCore/bindings/v8/ScriptValue.cpp
@@ -82,7 +82,6 @@ static PassRefPtr<InspectorValue> v8ToInspectorValue(v8::Handle<v8::Value> value
     if (value->IsString())
         return InspectorString::create(toWebCoreString(value));
     if (value->IsArray()) {
-        v8::HandleScope handleScope;
         v8::Handle<v8::Array> array = v8::Handle<v8::Array>::Cast(value);
         RefPtr<InspectorArray> inspectorArray = InspectorArray::create();
         uint32_t length = array->Length();
@@ -99,8 +98,6 @@ static PassRefPtr<InspectorValue> v8ToInspectorValue(v8::Handle<v8::Value> value
     }
     if (value->IsObject()) {
         RefPtr<InspectorObject> inspectorObject = InspectorObject::create();
-
-        v8::HandleScope handleScope;
         v8::Handle<v8::Object> object = v8::Handle<v8::Object>::Cast(value);
         v8::Local<v8::Array> propertyNames = object->GetPropertyNames();
         uint32_t length = propertyNames->Length();
@@ -118,8 +115,11 @@ static PassRefPtr<InspectorValue> v8ToInspectorValue(v8::Handle<v8::Value> value
     return 0;
 }
 
-PassRefPtr<InspectorValue> ScriptValue::toInspectorValue(ScriptState*) const
+PassRefPtr<InspectorValue> ScriptValue::toInspectorValue(ScriptState* scriptState) const
 {
+    v8::HandleScope handleScope;
+    // v8::Object::GetPropertyNames() expects current context to be not null.
+    v8::Context::Scope contextScope(scriptState->context());
     return v8ToInspectorValue(m_value);
 }
 

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list