static void cache_file_cb(GObject *source_object, GAsyncResult *res, gpointer _info)
{
+ g_debug("data: cache_file_cb");
cache_file_end_t *info = _info;
char *url = g_file_get_path(info->src);
char *local = g_file_get_path(info->dst);
GError *error = NULL;
g_file_copy_finish(G_FILE(source_object), res, &error);
if (error) {
- g_message("error copying file ([%s]->[%s]): %s",
+ g_warning("data: error copying file ([%s]->[%s]): %s",
url, local, error->message);
g_error_free(error);
} else {
AWeatherCacheDoneCallback callback, gpointer user_data)
{
char *name = g_file_get_basename(dst);
- g_message("Caching file %s: %s", name, reason);
+ g_debug("data: do_cache - Caching file %s: %s", name, reason);
g_free(name);
GFile *parent = g_file_get_parent(dst);
- if (!g_file_query_exists(parent, NULL))
- g_file_make_directory_with_parents(parent, NULL, NULL);
+ if (!g_file_query_exists(parent, NULL)) {
+ char *path = g_file_get_path(parent);
+ g_mkdir_with_parents(path, 0755);
+ g_free(path);
+ }
g_object_unref(parent);
cache_file_end_t *info = g_malloc0(sizeof(cache_file_end_t));
info->dst = dst;
info->user_data = user_data;
g_file_copy_async(src, dst,
- G_FILE_COPY_OVERWRITE, // GFileCopyFlags flags,
- 0, // int io_priority,
- NULL, // GCancellable *cancellable,
- NULL, // GFileProgressCallback progress_callback,
- NULL, // gpointer progress_callback_data,
- cache_file_cb, // GAsyncReadyCallback callback,
- info); // gpointer user_data
+ G_FILE_COPY_OVERWRITE, // GFileCopyFlags flags,
+ G_PRIORITY_DEFAULT_IDLE, // int io_priority,
+ NULL, // GCancellable *cancellable,
+ NULL, // GFileProgressCallback progress_callback,
+ NULL, // gpointer progress_callback_data,
+ cache_file_cb, // GAsyncReadyCallback callback,
+ info); // gpointer user_data
return;
}