public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
* [rpms/glib2] cve-2026-58016-f44: fix desktop file handling
@ 2026-08-11 10:33 Matthias Clasen
0 siblings, 0 replies; only message in thread
From: Matthias Clasen @ 2026-08-11 10:33 UTC (permalink / raw)
To: git-commits
A new commit has been pushed.
Repo : rpms/glib2
Branch : cve-2026-58016-f44
Commit : f83bdb3324f16ee3222bfd4a2180604a992e169d
Author : Matthias Clasen <mclasen@fedoraproject.org>
Date : 2007-12-22T18:06:02+00:00
Stats : +115/-1 in 2 file(s)
URL : https://src.fedoraproject.org/rpms/glib2/c/f83bdb3324f16ee3222bfd4a2180604a992e169d?branch=cve-2026-58016-f44
Log:
fix desktop file handling
---
diff --git a/desktopfiles.patch b/desktopfiles.patch
new file mode 100644
index 0000000..39de44b
--- /dev/null
+++ b/desktopfiles.patch
@@ -0,0 +1,106 @@
+diff -up glib-2.15.0/gio/gdesktopappinfo.c.desktopfiles glib-2.15.0/gio/gdesktopappinfo.c
+--- glib-2.15.0/gio/gdesktopappinfo.c.desktopfiles 2007-12-22 12:43:05.000000000 -0500
++++ glib-2.15.0/gio/gdesktopappinfo.c 2007-12-22 12:43:17.000000000 -0500
+@@ -920,10 +920,10 @@ static gboolean
+ g_desktop_app_info_supports_uris (GAppInfo *appinfo)
+ {
+ GDesktopAppInfo *info = G_DESKTOP_APP_INFO (appinfo);
+-
+- return
+- (strstr (info->exec, "%u") != NULL) ||
+- (strstr (info->exec, "%U") != NULL);
++
++ return info->exec &&
++ ((strstr (info->exec, "%u") != NULL) ||
++ (strstr (info->exec, "%U") != NULL));
+ }
+
+ static gboolean
+@@ -1581,7 +1581,8 @@ g_app_info_get_default_for_type (const c
+ * g_app_info_get_default_for_uri_scheme:
+ * @uri_scheme: a string containing a URI scheme.
+ *
+- * Gets the default application for launching applications using this URI scheme.
++ * Gets the default application for launching applications
++ * using this URI scheme.
+ *
+ * TODO: This is currently unimplemented.
+ *
+@@ -1625,11 +1626,12 @@ get_apps_from_dir (GHashTable *apps,
+
+ /* Don't return apps that don't take arguments */
+ if (appinfo &&
+- g_desktop_app_info_get_is_hidden (appinfo) &&
+- strstr (appinfo->exec,"%U") == NULL &&
+- strstr (appinfo->exec,"%u") == NULL &&
+- strstr (appinfo->exec,"%f") == NULL &&
+- strstr (appinfo->exec,"%F") == NULL)
++ (g_desktop_app_info_get_is_hidden (appinfo) ||
++ (appinfo->exec &&
++ strstr (appinfo->exec,"%U") == NULL &&
++ strstr (appinfo->exec,"%u") == NULL &&
++ strstr (appinfo->exec,"%f") == NULL &&
++ strstr (appinfo->exec,"%F") == NULL)))
+ {
+ g_object_unref (appinfo);
+ appinfo = NULL;
+@@ -1679,7 +1681,7 @@ g_app_info_get_all (void)
+ const char * const *dirs;
+ GHashTable *apps;
+ GHashTableIter iter;
+- gpointer key;
++ gpointer value;
+ int i;
+ GList *infos;
+
+@@ -1695,8 +1697,8 @@ g_app_info_get_all (void)
+
+ infos = NULL;
+ g_hash_table_iter_init (&iter, apps);
+- while (g_hash_table_iter_next (&iter, &key, NULL))
+- infos = g_list_prepend (infos, key);
++ while (g_hash_table_iter_next (&iter, NULL, &value))
++ infos = g_list_prepend (infos, value);
+
+ g_hash_table_destroy (apps);
+
+@@ -2142,13 +2144,13 @@ append_desktop_entry (GList *list,
+ * get_all_desktop_entries_for_mime_type:
+ * @mime_type: a mime type.
+ *
+- * Returns all the desktop filenames for @mime_type. The desktop files
++ * Returns all the desktop ids for @mime_type. The desktop files
+ * are listed in an order so that default applications are listed before
+ * non-default ones, and handlers for inherited mimetypes are listed
+ * after the base ones.
+ *
+- * Return value: a #GList containing the desktop filenames containing the
+- * @mime_type.
++ * Return value: a #GList containing the desktop ids which claim
++ * to handle @mime_type.
+ */
+ static GList *
+ get_all_desktop_entries_for_mime_type (const char *base_mime_type)
+diff -up glib-2.15.0/gio/gappinfo.c.desktopfiles glib-2.15.0/gio/gappinfo.c
+--- glib-2.15.0/gio/gappinfo.c.desktopfiles 2007-12-22 12:42:57.000000000 -0500
++++ glib-2.15.0/gio/gappinfo.c 2007-12-22 12:43:17.000000000 -0500
+@@ -139,6 +139,9 @@ g_app_info_equal (GAppInfo *appinfo1,
+ * platform dependent. For instance on Unix this is the
+ * desktop file id from the xdg menu specification.
+ *
++ * Note that the returned ID may be %NULL, depending on how
++ * the @appinfo has been constructed.
++ *
+ * Returns: a string containing the application's ID.
+ **/
+ const char *
+@@ -180,8 +183,7 @@ g_app_info_get_name (GAppInfo *appinfo)
+ * Gets a human-readable description of an installed application.
+ *
+ * Returns: a string containing a description of the
+- * application @appinfo, or %NULL if none. The returned string should be not freed
+- * when no longer needed.
++ * application @appinfo, or %NULL if none.
+ **/
+ const char *
+ g_app_info_get_description (GAppInfo *appinfo)
diff --git a/glib2.spec b/glib2.spec
index 7c83ed8..5324352 100644
--- a/glib2.spec
+++ b/glib2.spec
@@ -3,13 +3,14 @@
Summary: A library of handy utility functions
Name: glib2
Version: 2.15.0
-Release: 2%{?dist}
+Release: 3%{?dist}
License: LGPLv2+
Group: System Environment/Libraries
URL: http://www.gtk.org
Source: http://download.gnome.org/sources/glib/2.15/glib-%{version}.tar.bz2
Source2: glib2.sh
Source3: glib2.csh
+Patch0: desktopfiles.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: pkgconfig >= 1:0.14
BuildRequires: gamin-devel
@@ -48,7 +49,11 @@ of version 2 of the GLib library.
%prep
%setup -q -n glib-%{version}
+<<<<<<< glib2.spec
+%patch0 -p1 -b .desktopfiles
+=======
%patch0 -p1 -b .gtestutils.patch
+>>>>>>> 1.146
%build
for i in config.guess config.sub ; do
@@ -124,6 +129,9 @@ rm -rf $RPM_BUILD_ROOT
%{_libdir}/lib*.a
%changelog
+* Sat Dec 22 2007 Matthias Clasen <mclasen@redhat.com> - 2.15.0-3
+- Fix some errors in desktop files handling
+
* Fri Dec 21 2007 Caolan McNamara <caolanm@redhat.com> - 2.15.0-2
- add jakubs patch in so xulrunner will build and so gcc too
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2026-08-11 10:33 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-08-11 10:33 [rpms/glib2] cve-2026-58016-f44: fix desktop file handling Matthias Clasen
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox