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

andreas.kling at nokia.com andreas.kling at nokia.com
Wed Dec 22 12:56:37 UTC 2010


The following commit has been merged in the debian/experimental branch:
commit 4d7506de30ccfad389ec116cecc6f8aba746afbc
Author: andreas.kling at nokia.com <andreas.kling at nokia.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Thu Sep 2 13:25:55 2010 +0000

    2010-09-02  Andreas Kling  <andreas.kling at nokia.com>
    
            Rubber-stamped by Simon Hausmann.
    
            [Qt] REGRESSION(r62898): tst_QWebFrame crashing
            https://bugs.webkit.org/show_bug.cgi?id=43039
    
            Rolling out the offending change <http://trac.webkit.org/changeset/62898>
    
            * tests/qwebframe/tst_qwebframe.cpp:
            (tst_QWebFrame::evalJSV):
    2010-09-02  Andreas Kling  <andreas.kling at nokia.com>
    
            Rubber-stamped by Simon Hausmann.
    
            [Qt] REGRESSION(r62898): tst_QWebFrame crashing
            https://bugs.webkit.org/show_bug.cgi?id=43039
    
            Rolling out the offending change <http://trac.webkit.org/changeset/62898>
    
            * bridge/qt/qt_instance.cpp:
            (JSC::Bindings::QtInstance::markAggregate):
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@66667 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 32a3cef..44b15f4 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,15 @@
+2010-09-02  Andreas Kling  <andreas.kling at nokia.com>
+
+        Rubber-stamped by Simon Hausmann.
+
+        [Qt] REGRESSION(r62898): tst_QWebFrame crashing
+        https://bugs.webkit.org/show_bug.cgi?id=43039
+
+        Rolling out the offending change <http://trac.webkit.org/changeset/62898>
+
+        * bridge/qt/qt_instance.cpp:
+        (JSC::Bindings::QtInstance::markAggregate):
+
 2010-09-02  Anton Muhin  <antonm at chromium.org>
 
         Reviewed by Tony Chang.
diff --git a/WebCore/bridge/qt/qt_instance.cpp b/WebCore/bridge/qt/qt_instance.cpp
index 3723ec0..1229919 100644
--- a/WebCore/bridge/qt/qt_instance.cpp
+++ b/WebCore/bridge/qt/qt_instance.cpp
@@ -192,34 +192,6 @@ void QtInstance::markAggregate(MarkStack& markStack)
         if (val)
             markStack.append(val);
     }
-    foreach (QtField* field, m_fields.values()) {
-        bool mark = false;
-        if (field->fieldType() == QtField::MetaProperty)
-            mark = true;
-        else if (field->fieldType() == QtField::DynamicProperty) {
-            if (m_object && m_object->dynamicPropertyNames().indexOf(field->name()) >= 0)
-                mark = true;
-        } else if (m_object) {
-            QList<QObject*> children = m_object->children();
-            for (int index = 0; index < children.count(); ++index) {
-                QObject* child = children.at(index);
-                if (child->objectName().toLatin1() == field->name()) {
-                    mark = true;
-                    break;
-                }
-            }
-        }
-        if (mark) {
-            if (RefPtr<RootObject> ro = rootObject()) {
-                JSGlobalObject* globalobj = ro->globalObject();
-                if (globalobj) {
-                    ExecState* exec = globalobj->globalExec();
-                    JSValue val = field->valueFromInstance(exec, this);
-                    markStack.append(val);
-                }
-            }
-        }
-    }
 }
 
 void QtInstance::begin()
diff --git a/WebKit/qt/ChangeLog b/WebKit/qt/ChangeLog
index 996435b..a2354d6 100644
--- a/WebKit/qt/ChangeLog
+++ b/WebKit/qt/ChangeLog
@@ -1,3 +1,15 @@
+2010-09-02  Andreas Kling  <andreas.kling at nokia.com>
+
+        Rubber-stamped by Simon Hausmann.
+
+        [Qt] REGRESSION(r62898): tst_QWebFrame crashing
+        https://bugs.webkit.org/show_bug.cgi?id=43039
+
+        Rolling out the offending change <http://trac.webkit.org/changeset/62898>
+
+        * tests/qwebframe/tst_qwebframe.cpp:
+        (tst_QWebFrame::evalJSV):
+
 2010-09-01  Mahesh Kulkarni  <mahesh.kulkarni at nokia.com>
 
         Reviewed by Laszlo Gombos.
diff --git a/WebKit/qt/tests/qwebframe/tst_qwebframe.cpp b/WebKit/qt/tests/qwebframe/tst_qwebframe.cpp
index 98ce663..2c63739 100644
--- a/WebKit/qt/tests/qwebframe/tst_qwebframe.cpp
+++ b/WebKit/qt/tests/qwebframe/tst_qwebframe.cpp
@@ -38,7 +38,6 @@
 #include <qsslerror.h>
 #endif
 #include "../util.h"
-#include "../WebCoreSupport/DumpRenderTreeSupportQt.h"
 
 struct CustomType {
     QString string;
@@ -572,11 +571,9 @@ public slots:
     void cleanup();
 
 private slots:
+    void getSetStaticProperty();
     void getSetDynamicProperty();
-    void getSetDynamicProperty_data();
     void getSetChildren();
-    void getSetChildren_data();
-    void getSetStaticProperty();
     void callQtInvokable();
     void connectAndDisconnect();
     void classEnums();
@@ -674,10 +671,6 @@ private:
         evalJS("delete retvalue; delete typevalue");
         return ret;
     }
-    void garbageCollectJS()
-    {
-        DumpRenderTreeSupportQt::garbageCollectorCollect();
-    }
     QObject* firstChildByClassName(QObject* parent, const char* className) {
         const QObjectList & children = parent->children();
         foreach (QObject* child, children) {
@@ -954,8 +947,6 @@ void tst_QWebFrame::getSetStaticProperty()
 
 void tst_QWebFrame::getSetDynamicProperty()
 {
-    QFETCH(bool, garbageCollect);
-
     // initially the object does not have the property
     // In WebKit, RuntimeObjects do not inherit Object, so don't have hasOwnProperty
 
@@ -967,34 +958,11 @@ void tst_QWebFrame::getSetDynamicProperty()
     //QCOMPARE(evalJS("myObject.hasOwnProperty('dynamicProperty')"), sTrue);
     QCOMPARE(evalJS("typeof myObject.dynamicProperty != 'undefined'"), sTrue);
     QCOMPARE(evalJS("myObject.dynamicProperty == 123"), sTrue);
-    if( garbageCollect ) {
-        garbageCollectJS();
-        QCOMPARE(evalJS("typeof myObject.dynamicProperty != 'undefined'"), sTrue);
-    }
 
     // property change in script should be reflected in C++
     QCOMPARE(evalJS("myObject.dynamicProperty = 'foo';"
                     "myObject.dynamicProperty"), QLatin1String("foo"));
     QCOMPARE(m_myObject->property("dynamicProperty").toString(), QLatin1String("foo"));
-    if( garbageCollect ) {
-        garbageCollectJS();
-        QCOMPARE(m_myObject->property("dynamicProperty").toString(), QLatin1String("foo"));
-    }
-
-    // add a dynamic property in C++ to another QObject
-    QObject* propertyObject = new QObject(m_myObject);
-    QCOMPARE(m_myObject->setProperty("dynamicObjectProperty", qVariantFromValue(propertyObject)), false);
-    QCOMPARE(evalJS("typeof myObject.dynamicObjectProperty != 'undefined'"), sTrue);
-    evalJS("myObject.dynamicObjectProperty.jsProperty = 123");
-    QCOMPARE(evalJS("myObject.dynamicObjectProperty.jsProperty == 123"), sTrue);
-    if( garbageCollect ) {
-        garbageCollectJS();
-        QCOMPARE(evalJS("typeof myObject.dynamicObjectProperty != 'undefined'"), sTrue);
-        QCOMPARE(evalJS("myObject.dynamicObjectProperty.jsProperty == 123"), sTrue);
-    }
-    QCOMPARE(m_myObject->setProperty("dynamicObjectProperty", QVariant()), false);
-    delete propertyObject;
-    QCOMPARE(evalJS("typeof myObject.dynamicObjectProperty == 'undefined'"), sTrue);
 
     // delete the property (XFAIL - can't delete properties)
     QEXPECT_FAIL("", "can't delete properties", Continue);
@@ -1005,21 +973,10 @@ void tst_QWebFrame::getSetDynamicProperty()
     //    QCOMPARE(evalJS("myObject.hasOwnProperty('dynamicProperty')"), sFalse);
     QCOMPARE(evalJS("typeof myObject.dynamicProperty"), sUndefined);
     */
-
-    evalJS("myObject.dynamicProperty = undefined");
-}
-
-void tst_QWebFrame::getSetDynamicProperty_data()
-{
-    QTest::addColumn<bool>("garbageCollect");
-    QTest::newRow("with garbageCollect") << true;
-    QTest::newRow("without garbageCollect") << false;
 }
 
 void tst_QWebFrame::getSetChildren()
 {
-    QFETCH(bool, garbageCollect);
-
     // initially the object does not have the child
     // (again, no hasOwnProperty)
 
@@ -1031,27 +988,12 @@ void tst_QWebFrame::getSetChildren()
     child->setObjectName("child");
 //  QCOMPARE(evalJS("myObject.hasOwnProperty('child')"), sTrue);
     QCOMPARE(evalJS("typeof myObject.child != 'undefined'"), sTrue);
-    evalJS("myObject.child.jsProperty = 123");
-    QCOMPARE(evalJS("myObject.child.jsProperty == 123"), sTrue);
-
-    if( garbageCollect ) {
-        garbageCollectJS();
-        QCOMPARE(evalJS("typeof myObject.child != 'undefined'"), sTrue);
-        QCOMPARE(evalJS("myObject.child.jsProperty == 123"), sTrue);
-    }
 
     // add a grandchild
     MyQObject* grandChild = new MyQObject(child);
     grandChild->setObjectName("grandChild");
 //  QCOMPARE(evalJS("myObject.child.hasOwnProperty('grandChild')"), sTrue);
     QCOMPARE(evalJS("typeof myObject.child.grandChild != 'undefined'"), sTrue);
-    evalJS("myObject.child.grandChild.jsProperty = 123");
-    evalJS("myObject.child.grandChild.jsProperty = 123");
-    if( garbageCollect ) {
-        garbageCollectJS();
-        QCOMPARE(evalJS("typeof myObject.child.grandChild != 'undefined'"), sTrue);
-        QCOMPARE(evalJS("myObject.child.grandChild.jsProperty == 123"), sTrue);
-    }
 
     // delete grandchild
     delete grandChild;
@@ -1062,18 +1004,6 @@ void tst_QWebFrame::getSetChildren()
     delete child;
 //  QCOMPARE(evalJS("myObject.hasOwnProperty('child')"), sFalse);
     QCOMPARE(evalJS("typeof myObject.child == 'undefined'"), sTrue);
-    if( garbageCollect ) {
-        garbageCollectJS();
-        QCOMPARE(evalJS("typeof myObject.child == 'undefined'"), sTrue);
-    }
-}
-
-
-void tst_QWebFrame::getSetChildren_data()
-{
-    QTest::addColumn<bool>("garbageCollect");
-    QTest::newRow("with garbageCollect") << true;
-    QTest::newRow("without garbageCollect") << false;
 }
 
 Q_DECLARE_METATYPE(QVector<int>)
@@ -1740,7 +1670,7 @@ void tst_QWebFrame::connectAndDisconnect()
     m_myObject->emitMySignal();
     QCOMPARE(m_myObject->qtFunctionInvoked(), 20);
     evalJS("myObject = null");
-    garbageCollectJS();
+    evalJS("gc()");
     m_myObject->resetQtFunctionInvoked();
     m_myObject->emitMySignal();
     QCOMPARE(m_myObject->qtFunctionInvoked(), 20);

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list