didReceiveBuffer/didReceiveData accepts the original (encoded) data size, but the libsoup backend is always sending the decoded data size.
Created attachment 218687 [details] Patch
Comment on attachment 218687 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=218687&action=review > Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp:607 > + while (!G_IS_SEEKABLE(baseStream)) > + baseStream = g_filter_input_stream_get_base_stream(G_FILTER_INPUT_STREAM(baseStream)); This assumes you will always eventually find a seekable stream... does this code get used for non-http requests as well? (eg, data: URIs) Also, be sure to test that it works right with resources returned from cache
I'm going to run the tests in debug mode and test that it's working with cached resources (though I think the inspector treats those specially). I'm pretty sure the data: URIs use that code indeed, good catch!
Created attachment 218778 [details] Patch
Comment on attachment 218778 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=218778&action=review > Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp:739 > + d->m_previousPosition = handle->currentStreamPosition(); > + Maybe try removing this...
Committed r160352: <http://trac.webkit.org/changeset/160352>