diff --git a/glob-leak.patch b/glob-leak.patch new file mode 100644 index 0000000..79239ce --- /dev/null +++ b/glob-leak.patch @@ -0,0 +1,30 @@ +diff -up gnome-vfs-2.19.91/libgnomevfs/xdgmimeglob.c.glob-leak gnome-vfs-2.19.91/libgnomevfs/xdgmimeglob.c +--- gnome-vfs-2.19.91/libgnomevfs/xdgmimeglob.c.glob-leak 2007-09-12 23:07:28.000000000 -0400 ++++ gnome-vfs-2.19.91/libgnomevfs/xdgmimeglob.c 2007-09-12 23:07:34.000000000 -0400 +@@ -263,7 +263,7 @@ _xdg_glob_hash_insert_text (XdgGlobHashN + { + child = _xdg_glob_hash_node_new (); + child->character = '\000'; +- child->mime_type = mime_type; ++ child->mime_type = strdup (mime_type); + child->child = NULL; + child->next = node->child; + node->child = child; +@@ -272,7 +272,7 @@ _xdg_glob_hash_insert_text (XdgGlobHashN + } + else + { +- node->mime_type = mime_type; ++ node->mime_type = strdup (mime_type); + } + } + else +@@ -477,7 +477,7 @@ _xdg_glob_hash_append_glob (XdgGlobHash + glob_hash->literal_list = _xdg_glob_list_append (glob_hash->literal_list, strdup (glob), strdup (mime_type)); + break; + case XDG_GLOB_SIMPLE: +- glob_hash->simple_node = _xdg_glob_hash_insert_text (glob_hash->simple_node, glob + 1, strdup (mime_type)); ++ glob_hash->simple_node = _xdg_glob_hash_insert_text (glob_hash->simple_node, glob + 1, mime_type); + break; + case XDG_GLOB_FULL: + glob_hash->full_list = _xdg_glob_list_append (glob_hash->full_list, strdup (glob), strdup (mime_type)); diff --git a/gnome-vfs2.spec b/gnome-vfs2.spec index 7c0c4a6..fb10200 100644 --- a/gnome-vfs2.spec +++ b/gnome-vfs2.spec @@ -14,7 +14,7 @@ Summary: The GNOME virtual file-system libraries Name: gnome-vfs2 Version: 2.19.91 -Release: 1%{?dist} +Release: 2%{?dist} License: LGPLv2 and LGPL+ and GPL+ # the daemon and the library are LGPLv2 # the modules are LGPL+ and GPL+ @@ -72,6 +72,8 @@ Patch6: gnome-vfs-2.15.91-mailto-command.patch # http://bugzilla.gnome.org/show_bug.cgi?id=356772 Patch8: gnome-vfs-2.16.0-no-dbus.patch +# http://bugzilla.gnome.org/show_bug.cgi?id=427958 +Patch9: glob-leak.patch %description GNOME VFS is the GNOME virtual file system. It is the foundation of @@ -124,6 +126,7 @@ shares (SMB) to applications using GNOME VFS. %patch201 -p0 -b .console %patch8 -p1 -b .no-dbus +%patch9 -p1 -b .glob-leak %build @@ -226,6 +229,9 @@ fi %config %{_sysconfdir}/gnome-vfs-2.0/modules/smb-module.conf %changelog +* Wed Sep 12 2007 Matthias Clasen - 2.19.91-2 +- Fix a small memory leak + * Mon Sep 3 2007 Matthias Clasen - 2.19.91-1 - Re-add gnome-mount dependency - Update to 2.19.91