rpms/gvfs/F-12 gvfs-1.4.3-ftp-fixes.patch, NONE, 1.1 gvfs-1.4.3-metadata-free.patch, NONE, 1.1 gvfs.spec, 1.173, 1.174
Alexander Larsson
alexl at fedoraproject.org
Tue Dec 1 11:04:17 UTC 2009
Author: alexl
Update of /cvs/pkgs/rpms/gvfs/F-12
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv4795
Modified Files:
gvfs.spec
Added Files:
gvfs-1.4.3-ftp-fixes.patch gvfs-1.4.3-metadata-free.patch
Log Message:
* Tue Dec 1 2009 Alexander Larsson <alexl at redhat.com> - 1.4.2-2
- Backport fixes from git:
- Don't leak metadata strings
- Don't access uninitialized data in ftp backend
gvfs-1.4.3-ftp-fixes.patch:
gvfsbackendftp.c | 3 +++
gvfsftpdircache.c | 6 +++---
2 files changed, 6 insertions(+), 3 deletions(-)
--- NEW FILE gvfs-1.4.3-ftp-fixes.patch ---
commit b98c2a479110b37802bcd9c9ecd7f0298bf33c56
Author: Alexander Larsson <alexl at redhat.com>
Date: Tue Dec 1 11:14:48 2009 +0100
Ensure timer_cancel is initialized
Otherwise it may be used uninitialized if progress_callback is NULL
(cherry picked from commit 2f86e533d18c67c5e820d08d53769d82884bff71)
diff --git a/daemon/gvfsbackendftp.c b/daemon/gvfsbackendftp.c
index 41eb493..5dfaa4c 100644
--- a/daemon/gvfsbackendftp.c
+++ b/daemon/gvfsbackendftp.c
@@ -1167,6 +1167,9 @@ ftp_output_stream_splice (GOutputStream *output,
GCancellable *current, *timer_cancel;
gulong cancel_cb_id;
+ timer_cancel = NULL;
+ cancel_cb_id = 0;
+
bytes_copied = 0;
if (progress_callback)
{
commit eff994cc20d177113989aa3a2160a9a30b70f4bc
Author: Alexander Larsson <alexl at redhat.com>
Date: Tue Dec 1 11:15:47 2009 +0100
Handle error case in cache lookup correctly
If we're in error, we should return NULL, not an uninitialized info.
(cherry picked from commit a17a5d9e3a13c0bf516a0955e79a1620efa00c6d)
diff --git a/daemon/gvfsftpdircache.c b/daemon/gvfsftpdircache.c
index e357edd..dffebbc 100644
--- a/daemon/gvfsftpdircache.c
+++ b/daemon/gvfsftpdircache.c
@@ -216,10 +216,10 @@ g_vfs_ftp_dir_cache_lookup_file_internal (GVfsFtpDirCache * cache,
g_vfs_ftp_dir_cache_entry_unref (entry);
}
- if (!g_vfs_ftp_task_is_in_error (task))
- info = cache->funcs->lookup_uncached (task, file);
+ if (g_vfs_ftp_task_is_in_error (task))
+ return NULL;
- return info;
+ return cache->funcs->lookup_uncached (task, file);
}
static GFileInfo *
gvfs-1.4.3-metadata-free.patch:
client/gdaemonvfs.c | 1 +
metadata/metatree.c | 2 +-
2 files changed, 2 insertions(+), 1 deletion(-)
--- NEW FILE gvfs-1.4.3-metadata-free.patch ---
commit 58df41d09a14104304b3df3580a61408d262fa02
Author: Alexander Larsson <alexl at redhat.com>
Date: Tue Dec 1 11:04:36 2009 +0100
Correctly dup strings in meta_tree_lookup_stringv
Also, make sure to free that in all callers.
(cherry picked from commit b2984619f1fa9ed1f73bafb3d749f322e17bb605)
diff --git a/client/gdaemonvfs.c b/client/gdaemonvfs.c
index 7479bde..b1b223d 100644
--- a/client/gdaemonvfs.c
+++ b/client/gdaemonvfs.c
@@ -1267,6 +1267,7 @@ _g_daemon_vfs_append_metadata_for_set (DBusMessage *message,
DBUS_TYPE_ARRAY, DBUS_TYPE_STRING, &val, g_strv_length (val),
0);
}
+ g_strfreev (current);
}
else if (type == G_FILE_ATTRIBUTE_TYPE_INVALID)
{
diff --git a/metadata/metatree.c b/metadata/metatree.c
index 4a0e5f5..2820fb5 100644
--- a/metadata/metatree.c
+++ b/metadata/metatree.c
@@ -1657,7 +1657,7 @@ meta_tree_lookup_stringv (MetaTree *tree,
num_strings = GUINT32_FROM_BE (stringv->num_strings);
res = g_new (char *, num_strings + 1);
for (i = 0; i < num_strings; i++)
- res[i] = verify_string (tree, stringv->strings[i]);
+ res[i] = g_strdup (verify_string (tree, stringv->strings[i]));
res[i] = NULL;
}
Index: gvfs.spec
===================================================================
RCS file: /cvs/pkgs/rpms/gvfs/F-12/gvfs.spec,v
retrieving revision 1.173
retrieving revision 1.174
diff -u -p -r1.173 -r1.174
--- gvfs.spec 30 Nov 2009 14:45:56 -0000 1.173
+++ gvfs.spec 1 Dec 2009 11:04:17 -0000 1.174
@@ -1,7 +1,7 @@
Summary: Backends for the gio framework in GLib
Name: gvfs
Version: 1.4.2
-Release: 1%{?dist}
+Release: 2%{?dist}
License: LGPLv2+
Group: System Environment/Libraries
URL: http://www.gtk.org
@@ -40,6 +40,10 @@ Patch1: 0001-Add-AFC-backend.patch
# from upstream
Patch2: gvfs-1.4.3-smb-queryfs-old-samba.patch
# from upstream
+Patch3: gvfs-1.4.3-metadata-free.patch
+# from upstream
+Patch4: gvfs-1.4.3-ftp-fixes.patch
+# from upstream
Patch12: gvfs-1.4.1-http-suport-stream-query-info.patch
Patch13: gvfs-1.4.1-http-soup-header-parsing.patch
@@ -140,6 +144,8 @@ and iPod Touches to applications using g
%patch0 -p1 -b .archive-integration
%patch1 -p1 -b .afc
%patch2 -p1 -b .samba-queryfs-older
+%patch3 -p1 -b .metadata-free
+%patch4 -p1 -b .ftp-fix
%patch12 -p1 -b .http-query-info
%patch13 -p1 -b .http-headers
@@ -307,6 +313,11 @@ killall -USR1 gvfsd >&/dev/null || :
%{_datadir}/gvfs/remote-volume-monitors/afc.monitor
%changelog
+* Tue Dec 1 2009 Alexander Larsson <alexl at redhat.com> - 1.4.2-2
+- Backport fixes from git:
+- Don't leak metadata strings
+- Don't access uninitialized data in ftp backend
+
* Mon Nov 30 2009 Tomas Bzatek <tbzatek at redhat.com> - 1.4.2-1
- Update to 1.4.2
More information about the fedora-extras-commits
mailing list