icon theme: Avoid a string copy
authorMatthias Clasen <mclasen@redhat.com>
Tue, 15 Oct 2019 23:20:05 +0000 (19:20 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Tue, 15 Oct 2019 23:44:26 +0000 (19:44 -0400)
GIO has gained a way to peek at a GFile
path; lets use that.

gtk/gtkicontheme.c

index ee7f7c49bb779b9078329be4fe460dc7b3565ea3..e44b953017980ccf9ba2530bec411d5f97a93a63 100644 (file)
@@ -3276,17 +3276,16 @@ gtk_icon_info_get_filename (GtkIconInfo *icon_info)
 gboolean
 gtk_icon_info_is_symbolic (GtkIconInfo *icon_info)
 {
-  gchar *icon_uri;
+  const char *path;
   gboolean is_symbolic;
 
   g_return_val_if_fail (GTK_IS_ICON_INFO (icon_info), FALSE);
 
-  icon_uri = NULL;
+  path = NULL;
   if (icon_info->icon_file)
-    icon_uri = g_file_get_uri (icon_info->icon_file);
+    path = g_file_peek_path (icon_info->icon_file);
 
-  is_symbolic = (icon_uri != NULL) && (icon_uri_is_symbolic (icon_uri, -1));
-  g_free (icon_uri);
+  is_symbolic = (path != NULL) && (icon_uri_is_symbolic (path, -1));
 
   return is_symbolic;
 }