Title: [140524] trunk/Source/WebCore
Revision
140524
Author
[email protected]
Date
2013-01-23 01:21:19 -0800 (Wed, 23 Jan 2013)

Log Message

REGRESSION(r140338): WebKitGtk+ trying to allocate a buffer too big
https://bugs.webkit.org/show_bug.cgi?id=107646

Reviewed by Carlos Garcia Campos.

g_input_stream_skip_async() was replaced in r140338 by
g_input_stream_read_async() to workaround a glib buffer. The former
was using G_MAXSSIZE to skip the whole redirect message but we
cannot use it for the latter because it will try to
allocate a buffer of that size. Replaced it by READ_BUFFER_SIZE. No
new tests required, functionality already covered by network tests..

* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::redirectSkipCallback):
(WebCore::sendRequestCallback):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (140523 => 140524)


--- trunk/Source/WebCore/ChangeLog	2013-01-23 09:18:48 UTC (rev 140523)
+++ trunk/Source/WebCore/ChangeLog	2013-01-23 09:21:19 UTC (rev 140524)
@@ -1,3 +1,21 @@
+2013-01-23  Sergio Villar Senin  <[email protected]>
+
+        REGRESSION(r140338): WebKitGtk+ trying to allocate a buffer too big
+        https://bugs.webkit.org/show_bug.cgi?id=107646
+
+        Reviewed by Carlos Garcia Campos.
+
+        g_input_stream_skip_async() was replaced in r140338 by
+        g_input_stream_read_async() to workaround a glib buffer. The former
+        was using G_MAXSSIZE to skip the whole redirect message but we
+        cannot use it for the latter because it will try to
+        allocate a buffer of that size. Replaced it by READ_BUFFER_SIZE. No
+        new tests required, functionality already covered by network tests..
+
+        * platform/network/soup/ResourceHandleSoup.cpp:
+        (WebCore::redirectSkipCallback):
+        (WebCore::sendRequestCallback):
+
 2013-01-23  Andrey Adaikin  <[email protected]>
 
         Web Inspector: use inspectedWindow.document instead of document in InjectedScript

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


--- trunk/Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp	2013-01-23 09:18:48 UTC (rev 140523)
+++ trunk/Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp	2013-01-23 09:21:19 UTC (rev 140524)
@@ -526,7 +526,7 @@
     }
 
     if (bytesSkipped > 0) {
-        g_input_stream_read_async(d->m_inputStream.get(), d->m_buffer, G_MAXSSIZE, G_PRIORITY_DEFAULT,
+        g_input_stream_read_async(d->m_inputStream.get(), d->m_buffer, READ_BUFFER_SIZE, G_PRIORITY_DEFAULT,
             d->m_cancellable.get(), redirectSkipCallback, handle.get());
         return;
     }
@@ -681,7 +681,7 @@
             // We use read_async() rather than skip_async() to work around
             // https://bugzilla.gnome.org/show_bug.cgi?id=691489 until we can
             // depend on glib > 2.35.4
-            g_input_stream_read_async(d->m_inputStream.get(), d->m_buffer, G_MAXSSIZE, G_PRIORITY_DEFAULT,
+            g_input_stream_read_async(d->m_inputStream.get(), d->m_buffer, READ_BUFFER_SIZE, G_PRIORITY_DEFAULT,
                 d->m_cancellable.get(), redirectSkipCallback, handle.get());
             return;
         }
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to