diff options
Diffstat (limited to 'libsoup/soup-content-sniffer-stream.c')
-rw-r--r-- | libsoup/soup-content-sniffer-stream.c | 23 |
1 files changed, 11 insertions, 12 deletions
diff --git a/libsoup/soup-content-sniffer-stream.c b/libsoup/soup-content-sniffer-stream.c index 42e92476..d358a19e 100644 --- a/libsoup/soup-content-sniffer-stream.c +++ b/libsoup/soup-content-sniffer-stream.c @@ -233,6 +233,16 @@ soup_content_sniffer_stream_skip (GInputStream *stream, } static gboolean +soup_content_sniffer_stream_can_poll (GPollableInputStream *pollable) +{ + GInputStream *base_stream = G_FILTER_INPUT_STREAM (pollable)->base_stream; + + return G_IS_POLLABLE_INPUT_STREAM (base_stream) && + g_pollable_input_stream_can_poll (G_POLLABLE_INPUT_STREAM (base_stream)); +} + + +static gboolean soup_content_sniffer_stream_is_readable (GPollableInputStream *stream) { SoupContentSnifferStream *sniffer = SOUP_CONTENT_SNIFFER_STREAM (stream); @@ -320,23 +330,12 @@ static void soup_content_sniffer_stream_pollable_init (GPollableInputStreamInterface *pollable_interface, gpointer interface_data) { + pollable_interface->can_poll = soup_content_sniffer_stream_can_poll; pollable_interface->is_readable = soup_content_sniffer_stream_is_readable; pollable_interface->read_nonblocking = soup_content_sniffer_stream_read_nonblocking; pollable_interface->create_source = soup_content_sniffer_stream_create_source; } -GInputStream * -soup_content_sniffer_stream_new (SoupContentSniffer *sniffer, - SoupMessage *msg, - GInputStream *base_stream) -{ - return g_object_new (SOUP_TYPE_CONTENT_SNIFFER_STREAM, - "base-stream", base_stream, - "message", msg, - "sniffer", sniffer, - NULL); -} - gboolean soup_content_sniffer_stream_is_ready (SoupContentSnifferStream *sniffer, gboolean blocking, |