From 8e42bd0f273f5e0ae10fbc04ad49dc8d2e5b4655 Mon Sep 17 00:00:00 2001
From: Simon Hausmann <simon.hausmann@nokia.com>
Date: Mon, 28 Jun 2010 13:17:22 +0200
Subject: Updated WebKit to 38d650efc92427cd6452f6685d3c40d22428cdb7

|| <https://webkit.org/b/40000> || [Qt] QGraphicsWebView crash when calling setScale() before setUrl() ||
|| <https://webkit.org/b/38597> || [Qt] QtTestBrowser does not have a "Load" button ; therefore, unable to load pages on touch only symbian devices (portrait mode). ||
---
 src/3rdparty/webkit/.tag                                  |  2 +-
 src/3rdparty/webkit/VERSION                               |  2 +-
 src/3rdparty/webkit/WebKit/qt/Api/qgraphicswebview.cpp    |  2 ++
 src/3rdparty/webkit/WebKit/qt/ChangeLog                   | 15 +++++++++++++++
 .../qt/tests/qgraphicswebview/tst_qgraphicswebview.cpp    |  8 ++++++++
 5 files changed, 27 insertions(+), 2 deletions(-)

diff --git a/src/3rdparty/webkit/.tag b/src/3rdparty/webkit/.tag
index 24cf142..aa30784 100644
--- a/src/3rdparty/webkit/.tag
+++ b/src/3rdparty/webkit/.tag
@@ -1 +1 @@
-2f598e9b7b376d851fe089bc1dc729bcf0393a06
+38d650efc92427cd6452f6685d3c40d22428cdb7
diff --git a/src/3rdparty/webkit/VERSION b/src/3rdparty/webkit/VERSION
index 924b120..980e01a 100644
--- a/src/3rdparty/webkit/VERSION
+++ b/src/3rdparty/webkit/VERSION
@@ -4,4 +4,4 @@ This is a snapshot of the Qt port of WebKit from
 
 and has the sha1 checksum
 
-        2f598e9b7b376d851fe089bc1dc729bcf0393a06
+        38d650efc92427cd6452f6685d3c40d22428cdb7
diff --git a/src/3rdparty/webkit/WebKit/qt/Api/qgraphicswebview.cpp b/src/3rdparty/webkit/WebKit/qt/Api/qgraphicswebview.cpp
index 7a25646..c4d240c 100644
--- a/src/3rdparty/webkit/WebKit/qt/Api/qgraphicswebview.cpp
+++ b/src/3rdparty/webkit/WebKit/qt/Api/qgraphicswebview.cpp
@@ -442,6 +442,8 @@ QRectF QGraphicsWebViewPrivate::graphicsItemVisibleRect() const
 #if ENABLE(TILED_BACKING_STORE)
 void QGraphicsWebViewPrivate::updateTiledBackingStoreScale()
 {
+    if (!page)
+        return;
     WebCore::TiledBackingStore* backingStore = QWebFramePrivate::core(page->mainFrame())->tiledBackingStore();
     if (!backingStore)
         return;
diff --git a/src/3rdparty/webkit/WebKit/qt/ChangeLog b/src/3rdparty/webkit/WebKit/qt/ChangeLog
index 69a431f..8fb929e 100644
--- a/src/3rdparty/webkit/WebKit/qt/ChangeLog
+++ b/src/3rdparty/webkit/WebKit/qt/ChangeLog
@@ -1,3 +1,18 @@
+2010-06-28  Andreas Kling  <andreas.kling@nokia.com>
+
+        Reviewed by Simon Hausmann.
+
+        [Qt] QGraphicsWebView crash when calling setScale() before setUrl()
+        https://bugs.webkit.org/show_bug.cgi?id=40000
+
+        Check 'page' before dereference in _q_scaleChanged()
+        Autotest included.
+
+        * Api/qgraphicswebview.cpp:
+        (QGraphicsWebViewPrivate::_q_scaleChanged):
+        * tests/qgraphicswebview/tst_qgraphicswebview.cpp:
+        (tst_QGraphicsWebView::crashOnSetScaleBeforeSetUrl):
+
 2010-06-24  Simon Hausmann  <simon.hausmann@nokia.com>
 
         Unreviewed Symbian build fix.
diff --git a/src/3rdparty/webkit/WebKit/qt/tests/qgraphicswebview/tst_qgraphicswebview.cpp b/src/3rdparty/webkit/WebKit/qt/tests/qgraphicswebview/tst_qgraphicswebview.cpp
index e06524d..a04ff17 100644
--- a/src/3rdparty/webkit/WebKit/qt/tests/qgraphicswebview/tst_qgraphicswebview.cpp
+++ b/src/3rdparty/webkit/WebKit/qt/tests/qgraphicswebview/tst_qgraphicswebview.cpp
@@ -34,6 +34,7 @@ private slots:
     void crashOnViewlessWebPages();
     void microFocusCoordinates();
     void focusInputTypes();
+    void crashOnSetScaleBeforeSetUrl();
 };
 
 void tst_QGraphicsWebView::qgraphicswebview()
@@ -132,6 +133,13 @@ void tst_QGraphicsWebView::crashOnViewlessWebPages()
     delete page;
 }
 
+void tst_QGraphicsWebView::crashOnSetScaleBeforeSetUrl()
+{
+    QGraphicsWebView* webView = new QGraphicsWebView;
+    webView->setScale(2.0);
+    delete webView;
+}
+
 void tst_QGraphicsWebView::microFocusCoordinates()
 {
     QWebPage* page = new QWebPage;
-- 
cgit v0.12