From 0036962c07ade6811bd356799a88911a62723902 Mon Sep 17 00:00:00 2001 From: short <> Date: Mon, 24 Nov 2003 09:12:24 +0000 Subject: [PATCH] +mod_uri_load_base_reporting(): Complain on errors loading base URLs. --- src/install/acquire/main.c | 6 +++--- src/install/acquire/moduriload.c | 30 +++++++++++++++++++++++++++--- src/install/acquire/moduriload.h | 1 + src/install/acquire/ui-gnome.c | 2 +- src/install/acquire/ui-line.c | 2 +- 5 files changed, 33 insertions(+), 8 deletions(-) diff --git a/src/install/acquire/main.c b/src/install/acquire/main.c index 1f5e17b..2ebc479 100644 --- a/src/install/acquire/main.c +++ b/src/install/acquire/main.c @@ -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(); diff --git a/src/install/acquire/moduriload.c b/src/install/acquire/moduriload.c index fed2307..6c4f8d0 100644 --- a/src/install/acquire/moduriload.c +++ b/src/install/acquire/moduriload.c @@ -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 */ +} diff --git a/src/install/acquire/moduriload.h b/src/install/acquire/moduriload.h index f46e36e..e696cee 100644 --- a/src/install/acquire/moduriload.h +++ b/src/install/acquire/moduriload.h @@ -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 diff --git a/src/install/acquire/ui-gnome.c b/src/install/acquire/ui-gnome.c index d565f69..344177e 100644 --- a/src/install/acquire/ui-gnome.c +++ b/src/install/acquire/ui-gnome.c @@ -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. */ diff --git a/src/install/acquire/ui-line.c b/src/install/acquire/ui-line.c index d6a2334..788fb86 100644 --- a/src/install/acquire/ui-line.c +++ b/src/install/acquire/ui-line.c @@ -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); -- 1.8.3.1