Bug 64263 - libsoup-CRITICAL **: soup_message_io_pause: assertion `io != NULL' failed
Summary: libsoup-CRITICAL **: soup_message_io_pause: assertion `io != NULL' failed
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKitGTK (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Martin Robinson
URL: http://renevier.net/bugs/libsoupasser...
Keywords:
Depends on:
Blocks:
 
Reported: 2011-07-11 04:57 PDT by arno.
Modified: 2023-07-24 21:30 PDT (History)
11 users (show)

See Also:


Attachments
proposed patch (1.89 KB, patch)
2011-08-01 09:02 PDT, Philippe Normand
mrobinson: review-
Details | Formatted Diff | Diff
proposed patch (4.45 KB, patch)
2011-08-03 02:56 PDT, Philippe Normand
no flags Details | Formatted Diff | Diff
Patch (2.21 KB, patch)
2011-10-01 00:16 PDT, Martin Robinson
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description arno. 2011-07-11 04:57:53 PDT
Hi,
when a javascript alert is shown before all http request are done, a assertion is raised.
Load testcase url in GtkLauncher to reproduce.
Comment 1 Sergio Villar Senin 2011-07-28 01:53:22 PDT
I think that error is happening due to the current implementation of deferred loading.
Comment 2 Philippe Normand 2011-08-01 09:02:37 PDT
Created attachment 102522 [details]
proposed patch
Comment 3 Martin Robinson 2011-08-01 09:09:53 PDT
Comment on attachment 102522 [details]
proposed patch

View in context: https://bugs.webkit.org/attachment.cgi?id=102522&action=review

> Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp:708
> +    if ((soupMessage->status_code == SOUP_STATUS_NONE) || (soupMessage->status_code ==SOUP_STATUS_OK))

You are missing a space after the second ==. Shouldn't it be != too?
Comment 4 Philippe Normand 2011-08-03 02:56:33 PDT
Created attachment 102759 [details]
proposed patch
Comment 5 Martin Robinson 2011-08-03 03:14:35 PDT
Comment on attachment 102759 [details]
proposed patch

View in context: https://bugs.webkit.org/attachment.cgi?id=102759&action=review

> Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp:369
> +    ResourceHandleInternal* d = handle->getInternal();
> +    d->m_finished = true;

This can be one line.
Comment 6 Philippe Normand 2011-08-03 04:15:45 PDT
Committed r92271: <http://trac.webkit.org/changeset/92271>
Comment 7 Martin Robinson 2011-10-01 00:12:37 PDT
Re-opening this issue because I still see this problem with Epiphany on boingboing.net.
Comment 8 Martin Robinson 2011-10-01 00:16:20 PDT
Created attachment 109401 [details]
Patch
Comment 9 Martin Robinson 2011-10-01 00:16:56 PDT
Philippe, do you mind doing a review for this?
Comment 10 Sergio Villar Senin 2011-10-05 00:41:49 PDT
(In reply to comment #8)
> Created an attachment (id=109401) [details]
> Patch

The patch is fine for me BTW.
Comment 11 Xan Lopez 2011-10-05 02:25:34 PDT
Comment on attachment 109401 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=109401&action=review

> Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp:-708
> -    if (d->m_finished || soupMessage->status_code == SOUP_STATUS_NONE)

It's not immediately obvious why it's OK to remove the status_code check, so please add a comment in the ChangeLog about it.
Comment 12 Martin Robinson 2011-10-05 09:38:10 PDT
Committed r96715: <http://trac.webkit.org/changeset/96715>