[Xfce4-commits] r27156 - xarchiver/trunk/src
Jen Yee Hong
pcman at xfce.org
Fri Jun 27 03:10:54 CEST 2008
Author: pcman
Date: 2008-06-27 01:10:54 +0000 (Fri, 27 Jun 2008)
New Revision: 27156
Modified:
xarchiver/trunk/src/mime.c
xarchiver/trunk/src/mime.h
Log:
Fix invalid pointer in xa_get_stock_mime_icon().
Use "unknown" icon instead of "binary" for better consistency with
other archivers.
Modified: xarchiver/trunk/src/mime.c
===================================================================
--- xarchiver/trunk/src/mime.c 2008-06-26 22:09:16 UTC (rev 27155)
+++ xarchiver/trunk/src/mime.c 2008-06-27 01:10:54 UTC (rev 27156)
@@ -91,15 +91,17 @@
return type;
}
-const char *xa_get_stock_mime_icon(char *filename)
+const char *xa_get_stock_mime_icon(char *filename, const char *mime)
{
- const char *mime;
- const char *icon_name = "binary";
+ const char *icon_name = NULL;
//g_print ("%s\t%s\n",filename,mime);
if (strstr(filename,".ogg") || strstr(filename,".flac") )
icon_name = "sound";
- else if (strncmp(mime,"image/",6) == 0)
+ else if( NULL == mime )
+ return NULL;
+
+ if (strncmp(mime,"image/",6) == 0)
icon_name = "image";
else if (strcmp(mime,"text/html") == 0)
icon_name = "html";
@@ -131,7 +133,7 @@
icon_name = "gnome-mime-application-x-perl";
else if (strcmp(mime,"application/x-font-ttf") == 0)
icon_name = "gnome-mime-application-x-font-ttf";
- return icon_name;
+ return icon_name;
}
GdkPixbuf *xa_get_pixbuf_icon_from_cache(gchar *filename)
@@ -165,6 +167,7 @@
#else
mime_type = xdg_mime_get_mime_type_from_file_name(filename);
#endif
+
if( mime_type )
{
mime = lookup_mime_type( mime_type );
@@ -197,8 +200,9 @@
if( G_UNLIKELY( !icon ) )
{
- const char* fallback = xa_get_stock_mime_icon(filename);
- icon = gtk_icon_theme_load_icon ( icon_theme, fallback, 20, 0, NULL );
+ const char* fallback = xa_get_stock_mime_icon(filename, mime_type);
+ if( fallback )
+ icon = gtk_icon_theme_load_icon ( icon_theme, fallback, 20, 0, NULL );
}
if( G_UNLIKELY( !icon ) )
{
Modified: xarchiver/trunk/src/mime.h
===================================================================
--- xarchiver/trunk/src/mime.h 2008-06-26 22:09:16 UTC (rev 27155)
+++ xarchiver/trunk/src/mime.h 2008-06-27 01:10:54 UTC (rev 27156)
@@ -34,7 +34,7 @@
GdkPixbuf *pixbuf;
};
-const char *xa_get_stock_mime_icon(char *filename);
+const char *xa_get_stock_mime_icon(char *filename, const char* mime);
GdkPixbuf *xa_get_pixbuf_icon_from_cache(gchar *filename);
gint xa_icon_name_compare_func(pixbuf_cache *a, pixbuf_cache *b);
void xa_free_icon_cache();
More information about the Xfce4-commits
mailing list