X-Git-Url: http://git.cascardo.eti.br/?a=blobdiff_plain;f=backend%2Fgio%2Fgio.c;fp=backend%2Fgio%2Fgio.c;h=a0cb790fcc324cfd0b03553b33ba401e3eddf9d6;hb=e53b0fc7c7e264a421fcd8ff82d2b51a50e4483c;hp=f430f84c3ac24dc1652cf39517b46a5a3fc1642f;hpb=b7489c11c5b59414dae732822c6ee60fbf5dc4c2;p=cascardo%2Fatompub.git diff --git a/backend/gio/gio.c b/backend/gio/gio.c index f430f84..a0cb790 100644 --- a/backend/gio/gio.c +++ b/backend/gio/gio.c @@ -73,14 +73,23 @@ gio_enumerate_entries (AtomCtx *ctx, AtomEntry ***entries, size_t *len) GFileEnumerator *enumerator; GFileInfo *info; GFile *file; + GError *error; gchar *root; gchar *name; gchar *filename; GPtrArray *array; root = atom_config_get_str (ctx, "gio", "root"); dir = g_file_new_for_path (root); + error = NULL; enumerator = g_file_enumerate_children (dir, G_FILE_ATTRIBUTE_STANDARD_NAME, - G_FILE_QUERY_INFO_NONE, NULL, NULL); + G_FILE_QUERY_INFO_NONE, NULL, &error); + if (enumerator == NULL) + { + AtomError *aerr = atom_error_new_from_gerror (error); + atom_error_set (ctx, aerr); + g_error_free (error); + return; + } array = g_ptr_array_new (); while ((info = g_file_enumerator_next_file (enumerator, NULL, NULL)) != NULL) {