+mod_uri_load_base_reporting(): Complain on errors loading base URLs.
authorshort <>
Mon, 24 Nov 2003 09:12:24 +0000 (09:12 +0000)
committershort <>
Mon, 24 Nov 2003 09:12:24 +0000 (09:12 +0000)
src/install/acquire/main.c
src/install/acquire/moduriload.c
src/install/acquire/moduriload.h
src/install/acquire/ui-gnome.c
src/install/acquire/ui-line.c

index 1f5e17b..2ebc479 100644 (file)
@@ -149,12 +149,12 @@ void scan_disks(void)
 
 void microsoft_com(void)
 {
-       g_list_foreach(mod_uri_microsoftcom_list(),(GFunc)mod_uri_load,NULL);
+       g_list_foreach(mod_uri_microsoftcom_list(),(GFunc)mod_uri_load_base_reporting,NULL);
 }
 
 static void scan_batch(void)
 {
-       g_list_foreach(optarg_scan_path_list,(GFunc)mod_uri_load,NULL);
+       g_list_foreach(optarg_scan_path_list,(GFunc)mod_uri_load_base_reporting,NULL);
 
        if (optarg_scan_disks_quick)
                scan_disks_quick();
@@ -284,7 +284,7 @@ guint handler_id;
        if (!captivemodid_load(optarg_modid_path) && !captivemodid_load("./w32-mod-id.captivemodid.xml"))
                g_error(_("Unable to load modid database: %s"),optarg_modid_path);
 
-       mod_uri_load(gnome_vfs_uri_new("file://" G_STRINGIFY(VARLIBCAPTIVEDIR)));
+       mod_uri_load_base_reporting(gnome_vfs_uri_new("file://" G_STRINGIFY(VARLIBCAPTIVEDIR)));
 
        if (!is_interactive)
                scan_batch();
index fed2307..6c4f8d0 100644 (file)
@@ -317,7 +317,7 @@ gchar *uri_text;
                }
 }
 
-void mod_uri_load(GnomeVFSURI *uri)
+static void mod_uri_load_internal(GnomeVFSURI *uri,gboolean base_reporting)
 {
 GnomeVFSFileInfo file_info_local;
 GnomeVFSResult errvfsresult;
@@ -333,8 +333,16 @@ gchar *uri_text;
                }
 
        file_info_local.type=GNOME_VFS_FILE_TYPE_UNKNOWN;
-       if (GNOME_VFS_OK!=(errvfsresult=gnome_vfs_get_file_info_uri(uri,&file_info_local,GNOME_VFS_FILE_INFO_DEFAULT)))
-               return /* errvfsresult */;
+       if (GNOME_VFS_OK!=(errvfsresult=gnome_vfs_get_file_info_uri(uri,&file_info_local,GNOME_VFS_FILE_INFO_DEFAULT))) {
+               if (base_reporting) {
+gchar *uri_text;
+
+                       uri_text=gnome_vfs_uri_to_string(uri,GNOME_VFS_URI_HIDE_PASSWORD);
+                       g_warning(_("Error loading \"%s\": %s"),uri_text,gnome_vfs_result_to_string(errvfsresult));
+                       g_free(uri_text);
+                       }
+               return;
+               }
        switch (file_info_local.type) {
                case GNOME_VFS_FILE_TYPE_REGULAR:   return mod_uri_load_file(uri);
                case GNOME_VFS_FILE_TYPE_DIRECTORY: return mod_uri_load_directory(uri);
@@ -342,3 +350,19 @@ gchar *uri_text;
                }
        /* NOTREACHED */
 }
+
+void mod_uri_load(GnomeVFSURI *uri)
+{
+       g_return_if_fail(uri!=NULL);
+
+       mod_uri_load_internal(uri,
+                       FALSE); /* base_reporting */
+}
+
+void mod_uri_load_base_reporting(GnomeVFSURI *uri)
+{
+       g_return_if_fail(uri!=NULL);
+
+       mod_uri_load_internal(uri,
+                       TRUE);  /* base_reporting */
+}
index f46e36e..e696cee 100644 (file)
@@ -43,6 +43,7 @@ extern void (*acquire_module_all_modules_found_notify)(void);
 
 void mod_uri_load_file_from_memory(gconstpointer file_base,size_t file_length,GnomeVFSURI *uri);
 void mod_uri_load(GnomeVFSURI *uri);
+void mod_uri_load_base_reporting(GnomeVFSURI *uri);
 
 G_END_DECLS
 
index d565f69..344177e 100644 (file)
@@ -448,7 +448,7 @@ static GnomeVFSURI *process_scan_path_scan_path_uri;
 /* 'process_t' typed. */
 static void process_scan_path(void)
 {
-       mod_uri_load(process_scan_path_scan_path_uri);
+       mod_uri_load_base_reporting(process_scan_path_scan_path_uri);
 }
 
 /* 'process_t' typed. */
index d6a2334..788fb86 100644 (file)
@@ -261,7 +261,7 @@ GnomeVFSURI *uri;
                                        if (!uri)
                                                printf(_("Error paring URI: %s"),line);
                                        else {
-                                               mod_uri_load(uri);
+                                               mod_uri_load_base_reporting(uri);
                                                gnome_vfs_uri_unref(uri);
                                                }
                                        free(line);