[webkit-gtk] 1.4.1 - CLOSE_WAIT

Gavin Lambert gavinl at compacsort.com
Sun Jul 10 17:16:28 PDT 2011

Quoth Marco Peereboom:
> So I found the bug that causes this however I do not have a patch.
> What happens is that in my browser I set max-conns and max-conns-per-host
> right after obtaining the default session.  Like so:
> 	session = webkit_get_default_session();
> 	g_object_set(session, "max-conns", max_connections, (char
> *)NULL);
> 	g_object_set(session, "max-conns-per-host", max_host_connections,
> 	    (char *)NULL);
> Problem is that webkit will overwrite these values upon "first contact"
> with a site.  The responsible file is:
> WebCore/platform/network/soup/ResourceHandleSoup.cpp in function
> static void ensureSessionIsInitialized(SoupSession* session)
>     static const int maxConnections = 60;
>     static const int maxConnectionsPerHost = 6;
> ...
>     g_object_set(session,
>                  SOUP_SESSION_MAX_CONNS, maxConnections,
> maxConnectionsPerHost,
>                  NULL);
> This code is run AFTER I set those values.  I am drawing a blank on how
> to initialize webkit to a point where I can overwrite those values with
> something that makes sense in my environment.

I would think that the obvious solution would be to move these calls to the
internal implementation of webkit_get_default_session, so that they'd apply
in the normal case but a custom handler can override them.  (I haven't
looked at the code internals, though, so this might be more complicated than
it sounds.)

More information about the webkit-gtk mailing list