File libxfcegui4-fix-menu-icon-name-handling.patch of Package libxfcegui4

#! /bin/sh /usr/share/dpatch/dpatch-run
## 01_fix-menu-icons.dpatch by  <gauvain@ulteo.com>
##
## DP: Allows the icon to show up even if there is a dot in its name
## DP: Fixes Xfce #3614

@DPATCH@
Index: libxfcegui4-4.8.1/libxfcegui4/icons.c
===================================================================
--- libxfcegui4-4.8.1.orig/libxfcegui4/icons.c
+++ libxfcegui4-4.8.1/libxfcegui4/icons.c
@@ -142,8 +142,12 @@ xfce_themed_icon_load(const gchar *name,
     ensure_gtk_icon_theme();
 
     /* GtkIconTheme doesn't like extensions */
-    if((p = g_strrstr(name, ".")) && strlen(p) < 6)
-        name_fixed = g_strndup(name, p-name);
+    if (g_str_has_suffix (name, ".png") || g_str_has_suffix (name, ".svg")
+        || g_str_has_suffix (name, ".xpm"))
+    {
+        if((p = g_strrstr(name, ".")) && strlen(p) < 6)
+            name_fixed = g_strndup(name, p-name);
+    }
     
     pix = gtk_icon_theme_load_icon(icon_theme, name_fixed ? name_fixed : name,
                                    size,
@@ -220,9 +224,13 @@ xfce_themed_icon_lookup(const gchar *nam
     ensure_gtk_icon_theme();
     
     /* GtkIconTheme doesn't like extensions */
-    if((p = g_strrstr(name, ".")) && strlen(p) < 6)
-        name_fixed = g_strndup(name, p-name);
-    
+    if (g_str_has_suffix (name, ".png") || g_str_has_suffix (name, ".svg")
+        || g_str_has_suffix (name, ".xpm"))
+    {
+        if((p = g_strrstr(name, ".")) && strlen(p) < 6)
+            name_fixed = g_strndup(name, p-name);
+    }
+
     info = gtk_icon_theme_lookup_icon(icon_theme,
                                       name_fixed ? name_fixed : name,
                                       size, 0);
openSUSE Build Service is sponsored by