+static SoupSession *do_cache(cache_file_end_t *info, gboolean truncate, gchar *reason)
+{
+ char *name = g_path_get_basename(info->uri);
+ g_debug("data: do_cache - Caching file %s: %s", name, reason);
+ g_free(name);
+
+ /* TODO: move this to callback so we don't end up with 0 byte files
+ * Then change back to check for valid file after download */
+ if (truncate) info->fp = fopen_p(info->local, "w");
+ else info->fp = fopen_p(info->local, "a");
+ long bytes = ftell(info->fp);
+
+ SoupSession *session = soup_session_async_new();
+ SoupMessage *message = soup_message_new("GET", info->uri);
+ if (message == NULL)
+ g_error("message is null, cannot parse uri");
+ g_signal_connect(message, "got-chunk", G_CALLBACK(chunk_cb), info);
+ soup_message_headers_set_range(message->request_headers, bytes, -1);
+ soup_session_queue_message(session, message, done_cb, info);
+ return session;
+}
+
+/*