diff options
author | Dan Winship <danw@gnome.org> | 2012-11-06 10:37:54 -0500 |
---|---|---|
committer | Dan Winship <danw@gnome.org> | 2013-12-11 10:38:22 +0100 |
commit | d834e1e5d8e41f7fa1c082a7ab1ab9ce0335daed (patch) | |
tree | fc78810f7722534d568833e0c03ec457651fdf27 /libsoup/soup-message-server-io.c | |
parent | dd3e2f4d9be661a5fae96c81618fb25c438916da (diff) | |
download | libsoup-wip/server.tar.gz |
SoupServer: add exciting new APIs, deprecate musty old oneswip/server
FIXME: server-howto
Diffstat (limited to 'libsoup/soup-message-server-io.c')
-rw-r--r-- | libsoup/soup-message-server-io.c | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/libsoup/soup-message-server-io.c b/libsoup/soup-message-server-io.c index 2647b811..53c0ba38 100644 --- a/libsoup/soup-message-server-io.c +++ b/libsoup/soup-message-server-io.c @@ -252,17 +252,22 @@ get_response_headers (SoupMessage *msg, GString *headers, void soup_message_read_request (SoupMessage *msg, SoupSocket *sock, + gboolean use_thread_context, SoupMessageCompletionFn completion_cb, gpointer user_data) { GMainContext *async_context; GIOStream *iostream; - g_object_get (sock, - SOUP_SOCKET_ASYNC_CONTEXT, &async_context, - NULL); - if (!async_context) - async_context = g_main_context_ref (g_main_context_default ()); + if (use_thread_context) + async_context = g_main_context_ref_thread_default (); + else { + g_object_get (sock, + SOUP_SOCKET_ASYNC_CONTEXT, &async_context, + NULL); + if (!async_context) + async_context = g_main_context_ref (g_main_context_default ()); + } iostream = soup_socket_get_iostream (sock); @@ -271,6 +276,5 @@ soup_message_read_request (SoupMessage *msg, parse_request_headers, sock, completion_cb, user_data); - if (async_context) - g_main_context_unref (async_context); + g_main_context_unref (async_context); } |