Title: [109791] trunk
Revision
109791
Author
commit-qu...@webkit.org
Date
2012-03-05 13:33:44 -0800 (Mon, 05 Mar 2012)

Log Message

Unreviewed, rolling out r109760.
http://trac.webkit.org/changeset/109760
https://bugs.webkit.org/show_bug.cgi?id=80320

Caused many GTK+ tests to crash (Requested by mrobinson on
#webkit).

Patch by Sheriff Bot <webkit.review....@gmail.com> on 2012-03-05

.:

* configure.ac:

Source/WebCore:

* platform/network/ResourceHandleClient.h:
* platform/network/soup/ResourceHandleSoup.cpp:
(WebCoreSynchronousLoader):
(WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader):
(WebCore):
(WebCore::WebCoreSynchronousLoader::~WebCoreSynchronousLoader):
(WebCore::WebCoreSynchronousLoader::didReceiveResponse):
(WebCore::WebCoreSynchronousLoader::didReceiveData):
(WebCore::WebCoreSynchronousLoader::didFinishLoading):
(WebCore::WebCoreSynchronousLoader::didFail):
(WebCore::WebCoreSynchronousLoader::run):
(WebCore::closeCallback):
(WebCore::readCallback):
(WebCore::ResourceHandle::defaultSession):

Tools:

* gtk/jhbuild.modules:

LayoutTests:

* http/tests/xmlhttprequest/xmlhttprequest-sync-no-timers-expected.txt: Removed.
* http/tests/xmlhttprequest/xmlhttprequest-sync-no-timers.html: Removed.

Modified Paths

Removed Paths

Diff

Modified: trunk/ChangeLog (109790 => 109791)


--- trunk/ChangeLog	2012-03-05 21:29:44 UTC (rev 109790)
+++ trunk/ChangeLog	2012-03-05 21:33:44 UTC (rev 109791)
@@ -1,3 +1,14 @@
+2012-03-05  Sheriff Bot  <webkit.review....@gmail.com>
+
+        Unreviewed, rolling out r109760.
+        http://trac.webkit.org/changeset/109760
+        https://bugs.webkit.org/show_bug.cgi?id=80320
+
+        Caused many GTK+ tests to crash (Requested by mrobinson on
+        #webkit).
+
+        * configure.ac:
+
 2012-03-05  Kangil Han  <kangil....@samsung.com>
 
         [CMake][DRT] Add WebCoreTestSupport.

Modified: trunk/LayoutTests/ChangeLog (109790 => 109791)


--- trunk/LayoutTests/ChangeLog	2012-03-05 21:29:44 UTC (rev 109790)
+++ trunk/LayoutTests/ChangeLog	2012-03-05 21:33:44 UTC (rev 109791)
@@ -1,3 +1,15 @@
+2012-03-05  Sheriff Bot  <webkit.review....@gmail.com>
+
+        Unreviewed, rolling out r109760.
+        http://trac.webkit.org/changeset/109760
+        https://bugs.webkit.org/show_bug.cgi?id=80320
+
+        Caused many GTK+ tests to crash (Requested by mrobinson on
+        #webkit).
+
+        * http/tests/xmlhttprequest/xmlhttprequest-sync-no-timers-expected.txt: Removed.
+        * http/tests/xmlhttprequest/xmlhttprequest-sync-no-timers.html: Removed.
+
 2012-03-05  Adam Klein  <ad...@chromium.org>
 
         Never dispatch mutation events in shadow DOM

Deleted: trunk/LayoutTests/http/tests/xmlhttprequest/xmlhttprequest-sync-no-timers-expected.txt (109790 => 109791)


--- trunk/LayoutTests/http/tests/xmlhttprequest/xmlhttprequest-sync-no-timers-expected.txt	2012-03-05 21:29:44 UTC (rev 109790)
+++ trunk/LayoutTests/http/tests/xmlhttprequest/xmlhttprequest-sync-no-timers-expected.txt	2012-03-05 21:33:44 UTC (rev 109791)
@@ -1,4 +0,0 @@
-Test for: bug 68238: [soup] Crash while loading http://www.jusco.cn This test verifies that WebCore timers do not fire during synchronous XMLHttpRequests.
-
-PASS
-

Deleted: trunk/LayoutTests/http/tests/xmlhttprequest/xmlhttprequest-sync-no-timers.html (109790 => 109791)


--- trunk/LayoutTests/http/tests/xmlhttprequest/xmlhttprequest-sync-no-timers.html	2012-03-05 21:29:44 UTC (rev 109790)
+++ trunk/LayoutTests/http/tests/xmlhttprequest/xmlhttprequest-sync-no-timers.html	2012-03-05 21:33:44 UTC (rev 109791)
@@ -1,32 +0,0 @@
-<html><body>
-
-<p> Test for: <a href="" 68238<a>: [soup] Crash while loading http://www.jusco.cn</a> This test verifies that WebCore timers do not fire during synchronous XMLHttpRequests.
-<pre id=log></pre>
-
-<script type="text/_javascript_">
-if (window.layoutTestController)
-    layoutTestController.dumpAsText();
-
-function log(message)
-{
-    document.getElementById("log").innerHTML += message + "\n";
-}
-
-var timerEverFired = false;
-var intervalId = setInterval(function() {
-    timerEverFired = true;
-}, 10);
-
-try {
-    var req = new XMLHttpRequest();
-    req.open("GET", "resources/download-with-delay.php?iteration=5&delay=50", false);
-    req.send(null);
-} catch (ex) {
-    log(ex);
-}
-
-clearInterval(intervalId);
-log(timerEverFired ? "FAIL" : "PASS");
-</script>
-
-</body></html>

Modified: trunk/Source/WebCore/ChangeLog (109790 => 109791)


--- trunk/Source/WebCore/ChangeLog	2012-03-05 21:29:44 UTC (rev 109790)
+++ trunk/Source/WebCore/ChangeLog	2012-03-05 21:33:44 UTC (rev 109791)
@@ -1,3 +1,27 @@
+2012-03-05  Sheriff Bot  <webkit.review....@gmail.com>
+
+        Unreviewed, rolling out r109760.
+        http://trac.webkit.org/changeset/109760
+        https://bugs.webkit.org/show_bug.cgi?id=80320
+
+        Caused many GTK+ tests to crash (Requested by mrobinson on
+        #webkit).
+
+        * platform/network/ResourceHandleClient.h:
+        * platform/network/soup/ResourceHandleSoup.cpp:
+        (WebCoreSynchronousLoader):
+        (WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader):
+        (WebCore):
+        (WebCore::WebCoreSynchronousLoader::~WebCoreSynchronousLoader):
+        (WebCore::WebCoreSynchronousLoader::didReceiveResponse):
+        (WebCore::WebCoreSynchronousLoader::didReceiveData):
+        (WebCore::WebCoreSynchronousLoader::didFinishLoading):
+        (WebCore::WebCoreSynchronousLoader::didFail):
+        (WebCore::WebCoreSynchronousLoader::run):
+        (WebCore::closeCallback):
+        (WebCore::readCallback):
+        (WebCore::ResourceHandle::defaultSession):
+
 2012-03-05  Adam Klein  <ad...@chromium.org>
 
         Never dispatch mutation events in shadow DOM

Modified: trunk/Source/WebCore/platform/network/ResourceHandleClient.h (109790 => 109791)


--- trunk/Source/WebCore/platform/network/ResourceHandleClient.h	2012-03-05 21:29:44 UTC (rev 109790)
+++ trunk/Source/WebCore/platform/network/ResourceHandleClient.h	2012-03-05 21:33:44 UTC (rev 109791)
@@ -109,9 +109,6 @@
 #if ENABLE(BLOB)
         virtual AsyncFileStream* createAsyncFileStream(FileStreamClient*) { return 0; }
 #endif
-#if USE(SOUP)
-        virtual bool isSynchronousClient() { return false; }
-#endif
     };
 
 }

Modified: trunk/Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp (109790 => 109791)


--- trunk/Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp	2012-03-05 21:29:44 UTC (rev 109790)
+++ trunk/Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp	2012-03-05 21:33:44 UTC (rev 109791)
@@ -72,60 +72,16 @@
 class WebCoreSynchronousLoader : public ResourceHandleClient {
     WTF_MAKE_NONCOPYABLE(WebCoreSynchronousLoader);
 public:
+    WebCoreSynchronousLoader(ResourceError&, ResourceResponse &, Vector<char>&);
+    ~WebCoreSynchronousLoader();
 
-    WebCoreSynchronousLoader(ResourceError& error, ResourceResponse& response, Vector<char>& data)
-        : m_error(error)
-        , m_response(response)
-        , m_data(data)
-        , m_finished(false)
-    {
-        // We don't want any timers to fire while we are doing our synchronous load
-        // so we replace the thread default main context. The main loop iterations
-        // will only process GSources associated with this inner context.
-        GRefPtr<GMainContext> innerMainContext = adoptGRef(g_main_context_new());
-        g_main_context_push_thread_default(innerMainContext.get());
-        m_mainLoop = g_main_loop_new(innerMainContext.get(), false);
-    }
+    virtual void didReceiveResponse(ResourceHandle*, const ResourceResponse&);
+    virtual void didReceiveData(ResourceHandle*, const char*, int, int encodedDataLength);
+    virtual void didFinishLoading(ResourceHandle*, double /*finishTime*/);
+    virtual void didFail(ResourceHandle*, const ResourceError&);
 
-    ~WebCoreSynchronousLoader()
-    {
-        g_main_context_pop_thread_default(g_main_context_get_thread_default());
-    }
+    void run();
 
-    virtual bool isSynchronousClient()
-    {
-        return true;
-    }
-
-    virtual void didReceiveResponse(ResourceHandle*, const ResourceResponse& response)
-    {
-        m_response = response;
-    }
-
-    virtual void didReceiveData(ResourceHandle*, const char* data, int length, int)
-    {
-        m_data.append(data, length);
-    }
-
-    virtual void didFinishLoading(ResourceHandle*, double)
-    {
-        if (g_main_loop_is_running(m_mainLoop.get()))
-            g_main_loop_quit(m_mainLoop.get());
-        m_finished = true;
-    }
-
-    virtual void didFail(ResourceHandle* handle, const ResourceError& error)
-    {
-        m_error = error;
-        didFinishLoading(handle, 0);
-    }
-
-    void run()
-    {
-        if (!m_finished)
-            g_main_loop_run(m_mainLoop.get());
-    }
-
 private:
     ResourceError& m_error;
     ResourceResponse& m_response;
@@ -134,6 +90,47 @@
     GRefPtr<GMainLoop> m_mainLoop;
 };
 
+WebCoreSynchronousLoader::WebCoreSynchronousLoader(ResourceError& error, ResourceResponse& response, Vector<char>& data)
+    : m_error(error)
+    , m_response(response)
+    , m_data(data)
+    , m_finished(false)
+{
+    m_mainLoop = adoptGRef(g_main_loop_new(0, false));
+}
+
+WebCoreSynchronousLoader::~WebCoreSynchronousLoader()
+{
+}
+
+void WebCoreSynchronousLoader::didReceiveResponse(ResourceHandle*, const ResourceResponse& response)
+{
+    m_response = response;
+}
+
+void WebCoreSynchronousLoader::didReceiveData(ResourceHandle*, const char* data, int length, int)
+{
+    m_data.append(data, length);
+}
+
+void WebCoreSynchronousLoader::didFinishLoading(ResourceHandle*, double)
+{
+    g_main_loop_quit(m_mainLoop.get());
+    m_finished = true;
+}
+
+void WebCoreSynchronousLoader::didFail(ResourceHandle* handle, const ResourceError& error)
+{
+    m_error = error;
+    didFinishLoading(handle, 0);
+}
+
+void WebCoreSynchronousLoader::run()
+{
+    if (!m_finished)
+        g_main_loop_run(m_mainLoop.get());
+}
+
 static void cleanupSoupRequestOperation(ResourceHandle*, bool isDestroying);
 static void sendRequestCallback(GObject*, GAsyncResult*, gpointer);
 static void readCallback(GObject*, GAsyncResult*, gpointer);
@@ -640,9 +637,6 @@
     ResourceHandleInternal* d = handle->getInternal();
     g_input_stream_close_finish(d->m_inputStream.get(), res, 0);
     cleanupSoupRequestOperation(handle.get());
-
-    if (handle->client()->isSynchronousClient())
-        handle->client()->didFinishLoading(handle.get(), 0);
 }
 
 static void readCallback(GObject* source, GAsyncResult* asyncResult, gpointer data)
@@ -672,11 +666,8 @@
 
     if (!bytesRead) {
         // We inform WebCore of load completion now instead of waiting for the input
-        // stream to close because the input stream is closed asynchronously. If this
-        // is a synchronous request, we wait until the closeCallback, because we don't
-        // want to halt the internal main loop before the input stream closes.
-        if (!handle->client()->isSynchronousClient())
-            client->didFinishLoading(handle.get(), 0);
+        // stream to close because the input stream is closed asynchronously.
+        client->didFinishLoading(handle.get(), 0);
         g_input_stream_close_async(d->m_inputStream.get(), G_PRIORITY_DEFAULT, 0, closeCallback, handle.get());
         return;
     }
@@ -748,7 +739,6 @@
                      SOUP_SESSION_ADD_FEATURE_BY_TYPE, SOUP_TYPE_CONTENT_DECODER,
                      SOUP_SESSION_ADD_FEATURE_BY_TYPE, SOUP_TYPE_CONTENT_SNIFFER,
                      SOUP_SESSION_ADD_FEATURE_BY_TYPE, SOUP_TYPE_PROXY_RESOLVER_DEFAULT,
-                     SOUP_SESSION_USE_THREAD_CONTEXT, TRUE,
                      NULL);
     }
 

Modified: trunk/Tools/ChangeLog (109790 => 109791)


--- trunk/Tools/ChangeLog	2012-03-05 21:29:44 UTC (rev 109790)
+++ trunk/Tools/ChangeLog	2012-03-05 21:33:44 UTC (rev 109791)
@@ -1,3 +1,14 @@
+2012-03-05  Sheriff Bot  <webkit.review....@gmail.com>
+
+        Unreviewed, rolling out r109760.
+        http://trac.webkit.org/changeset/109760
+        https://bugs.webkit.org/show_bug.cgi?id=80320
+
+        Caused many GTK+ tests to crash (Requested by mrobinson on
+        #webkit).
+
+        * gtk/jhbuild.modules:
+
 2012-03-05  Charlie Reis  <cr...@chromium.org>
 
         [chromium] Pass WebNavigationPolicy to WebViewClient::createView

Modified: trunk/Tools/gtk/jhbuild.modules (109790 => 109791)


--- trunk/Tools/gtk/jhbuild.modules	2012-03-05 21:29:44 UTC (rev 109790)
+++ trunk/Tools/gtk/jhbuild.modules	2012-03-05 21:33:44 UTC (rev 109791)
@@ -120,9 +120,10 @@
     <dependencies>
       <dep package="libffi"/>
     </dependencies>
-    <branch module="/pub/GNOME/sources/glib/2.31/glib-2.31.8.tar.xz" version="2.31.8"
+    <branch module="/pub/GNOME/sources/glib/2.31/glib-2.31.2.tar.xz" version="2.31.2"
             repo="ftp.gnome.org"
-            hash="sha256:1ce3d275189000e1c50e92efcdb6447bc260b1e5c41699b7a1959e3e1928fbaa"/>
+            hash="sha256:19d7921671a487c3c5759a57df7b8508afdbadd7764d62a47a82fff7b399032b"
+            md5sum="1cbdf314d7c87916a0c3dce83ac0285f"/>
   </autotools>
 
   <autotools id="glib-networking">
@@ -151,9 +152,9 @@
     <dependencies>
       <dep package="glib-networking"/>
     </dependencies>
-    <branch module="libsoup" version="2.37.91+git"
+    <branch module="libsoup" version="2.37.2.1+git"
             repo="git.gnome.org"
-            tag="52057510accba49cfc6d1d0e52292368ba2e0c99"/>
+            tag="5cbfc48caf76ced2e28ee06c9e40523273601dc6"/>
   </autotools>
 
   <autotools id="fontconfig" autogen-sh="configure">

Modified: trunk/configure.ac (109790 => 109791)


--- trunk/configure.ac	2012-03-05 21:29:44 UTC (rev 109790)
+++ trunk/configure.ac	2012-03-05 21:33:44 UTC (rev 109791)
@@ -378,7 +378,7 @@
 FONTCONFIG_REQUIRED_VERSION=2.4
 FREETYPE2_REQUIRED_VERSION=9.0
 GLIB_REQUIRED_VERSION=2.31.2
-LIBSOUP_REQUIRED_VERSION=2.37.90
+LIBSOUP_REQUIRED_VERSION=2.37.2.1
 LIBXML_REQUIRED_VERSION=2.6
 PANGO_REQUIRED_VERSION=1.21.0
 
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to