New error interface: migrated core, backends and frontends to it
[cascardo/atompub.git] / backend / gio / gio.c
index 9a7244a..b930e10 100644 (file)
@@ -20,6 +20,7 @@
 #include <glib.h>
 #include <gio/gio.h>
 #include <atompub/atom.h>
+#include <atompub/atom-glib.h>
 
 static GFile *
 gio_iri_to_file (AtomCtx *ctx, IRI *iri)
@@ -45,8 +46,10 @@ gio_atom_retrieve_resource (AtomCtx *ctx, IRI *iri)
   error = NULL;
   if (!g_file_load_contents (file, NULL, &data, &len, NULL, &error))
     {
+      AtomError *aerr = atom_error_new_from_gerror (error);
       g_object_unref (file);
-      atom_error_set (ctx, error);
+      atom_error_set (ctx, aerr);
+      g_error_free (error);
       return NULL;
     }
   g_object_unref (file);