diff --git a/daemon/gvfschannel.c b/daemon/gvfschannel.c index efe2376..0d5438d 100644 --- a/daemon/gvfschannel.c +++ b/daemon/gvfschannel.c @@ -284,6 +284,7 @@ static void request_reader_free (RequestReader *reader) { g_object_unref (reader->command_stream); + g_object_unref (reader->channel); g_free (reader->data); g_free (reader); } @@ -539,7 +540,7 @@ start_request_reader (GVfsChannel *channel) RequestReader *reader; reader = g_new0 (RequestReader, 1); - reader->channel = channel; + reader->channel = g_object_ref (channel); reader->command_stream = g_object_ref (channel->priv->command_stream); g_input_stream_read_async (reader->command_stream,