[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