diff -rupN libsoup-2.41.90/libsoup/soup-client-input-stream.c libsoup-2.41.90-parchado/libsoup/soup-client-input-stream.c
--- libsoup-2.41.90/libsoup/soup-client-input-stream.c	2013-02-07 11:51:28.000000000 -0300
+++ libsoup-2.41.90-parchado/libsoup/soup-client-input-stream.c	2014-05-24 20:16:06.000000000 -0400
@@ -88,6 +88,14 @@ soup_client_input_stream_get_property (G
 	}
 }

+static void
+soup_client_input_stream_emit_got_chunk (SoupClientInputStream *stream, void *data, gssize nread)
+{
+	        SoupBuffer *buffer = soup_buffer_new (SOUP_MEMORY_TEMPORARY, data, nread);
+		        soup_message_got_chunk (stream->priv->msg, buffer);
+			        soup_buffer_free (buffer);
+}
+
 static gssize
 soup_client_input_stream_read_fn (GInputStream  *stream,
 				  void          *buffer,
@@ -103,6 +111,13 @@ soup_client_input_stream_read_fn (GInput
 	if (nread == 0)
 		g_signal_emit (stream, signals[EOF], 0);

+
+	/* Temporary HACK to keep SoupCache working */
+	        if (nread > 0) {
+	                soup_client_input_stream_emit_got_chunk (SOUP_CLIENT_INPUT_STREAM (stream),
+                        buffer, nread);
+	        }
+
 	return nread;
 }

@@ -120,6 +135,12 @@ soup_client_input_stream_read_nonblockin
 	if (nread == 0)
 		g_signal_emit (stream, signals[EOF], 0);

+	 /* Temporary HACK to keep SoupCache working */
+	        if (nread > 0) {
+	                soup_client_input_stream_emit_got_chunk (SOUP_CLIENT_INPUT_STREAM (stream),
+                        buffer, nread);
+	        }
+
 	return nread;
 }

