[gthumb] GIO root path (Filesystem) string updates, partial fix - still broken
- From: Michael J. Chudobiak <mjc src gnome org>
- To: svn-commits-list gnome org
- Subject: [gthumb] GIO root path (Filesystem) string updates, partial fix - still broken
- Date: Tue, 2 Jun 2009 10:52:41 -0400 (EDT)
commit ec86ab8cef7f474e793e4e52ae10b18877e39006
Author: Marlodavampire <brooss teambb gmail com>
Date: Tue Jun 2 10:52:01 2009 -0400
GIO root path (Filesystem) string updates, partial fix - still broken
Bug 525482
---
libgthumb/file-utils.c | 3 ++-
src/gth-location.c | 14 +++++++++++---
src/main.c | 2 +-
3 files changed, 14 insertions(+), 5 deletions(-)
diff --git a/libgthumb/file-utils.c b/libgthumb/file-utils.c
index 798fbbb..b8a47b5 100644
--- a/libgthumb/file-utils.c
+++ b/libgthumb/file-utils.c
@@ -1427,7 +1427,8 @@ remove_ending_separator (const gchar *path)
if (path == NULL)
return NULL;
-
+ if (strcmp(path, "file:///") == 0)
+ return g_strdup(path);
copy_len = len = strlen (path);
if ((len > 1)
&& (path[len - 1] == '/')
diff --git a/src/gth-location.c b/src/gth-location.c
index 0ad1a0d..eba502c 100644
--- a/src/gth-location.c
+++ b/src/gth-location.c
@@ -647,7 +647,7 @@ update_drives (GthLocation *loc)
/* Home, File System */
insert_drive_from_uri (loc, get_home_uri (), pos++);
- insert_drive_from_uri (loc, "file://", pos++);
+ insert_drive_from_uri (loc, "file:///", pos++);
if (!loc->priv->folders_only)
insert_drive_from_uri (loc, "catalog:///", pos++);
@@ -816,7 +816,7 @@ update_uri (GthLocation *loc,
pixbuf = get_icon_for_uri (GTK_WIDGET (loc), uri);
}
- if (same_uri (uri, base_uri)) {
+ if (same_uri (uri, base_uri) || same_uri (uri, "file:///")) {
if (loc->priv->catalog_uri) {
uri_name = g_strdup (_("Catalogs"));
}
@@ -851,10 +851,18 @@ update_uri (GthLocation *loc,
/**/
- if (same_uri (uri, base_uri) || same_uri (uri, home_uri))
+ if (same_uri (uri, base_uri) || same_uri (uri, home_uri) || same_uri (uri, "file:///"))
parent = NULL;
else
+ {
parent = remove_level_from_path (uri);
+ // remove_level_from_path returns file:// for root
+ // not file:/// like we need.
+ if( same_uri (parent, "file://" )){
+ g_free( parent );
+ parent = g_strdup("file:///");
+ }
+ }
g_free (uri);
uri = parent;
}
diff --git a/src/main.c b/src/main.c
index d204066..a59b1ab 100644
--- a/src/main.c
+++ b/src/main.c
@@ -865,7 +865,7 @@ get_icon_for_uri (GtkWidget *widget,
else if (strcmp (uri, get_home_uri ()) == 0)
return get_fs_icon (ICON_NAME_HOME, menu_size);
- if ((strcmp (uri, "file://") == 0) || (strcmp (uri, "/") == 0))
+ if ((strcmp (uri, "file:///") == 0) || (strcmp (uri, "/") == 0))
return get_fs_icon (ICON_NAME_HARDDISK, menu_size);
if (uri_scheme_is_catalog (uri)) {
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]