summaryrefslogtreecommitdiff
path: root/sysutils
diff options
context:
space:
mode:
authorjmmv <jmmv>2003-04-27 14:44:33 +0000
committerjmmv <jmmv>2003-04-27 14:44:33 +0000
commit1a9fea89c065c633ea552bb57753454f9b68609d (patch)
tree840629626a986be6235b5a2e466f3a2524112b46 /sysutils
parent72900535a05498c06be8bd1bb0a30f04c9000e9f (diff)
downloadpkgsrc-1a9fea89c065c633ea552bb57753454f9b68609d.tar.gz
Fix the file method to not use readdir_r at all if it is not present in the
system. Bump PKGREVISION to 1. Fixes many problems in Nautilus and other programs.
Diffstat (limited to 'sysutils')
-rw-r--r--sysutils/gnome-vfs2/Makefile3
-rw-r--r--sysutils/gnome-vfs2/buildlink2.mk4
-rw-r--r--sysutils/gnome-vfs2/distinfo3
-rw-r--r--sysutils/gnome-vfs2/patches/patch-al36
4 files changed, 42 insertions, 4 deletions
diff --git a/sysutils/gnome-vfs2/Makefile b/sysutils/gnome-vfs2/Makefile
index 74d5eef4a1f..ec298df2dfd 100644
--- a/sysutils/gnome-vfs2/Makefile
+++ b/sysutils/gnome-vfs2/Makefile
@@ -1,8 +1,9 @@
-# $NetBSD: Makefile,v 1.10 2003/04/27 02:03:01 rh Exp $
+# $NetBSD: Makefile,v 1.11 2003/04/27 14:44:33 jmmv Exp $
#
DISTNAME= gnome-vfs-2.2.4
PKGNAME= ${DISTNAME:S/vfs/vfs2/}
+PKGREVISION= 1
CATEGORIES= sysutils gnome
MASTER_SITES= ${MASTER_SITE_GNOME:=sources/gnome-vfs/2.2/}
EXTRACT_SUFX= .tar.bz2
diff --git a/sysutils/gnome-vfs2/buildlink2.mk b/sysutils/gnome-vfs2/buildlink2.mk
index 2106fda2a33..99ffcd5062c 100644
--- a/sysutils/gnome-vfs2/buildlink2.mk
+++ b/sysutils/gnome-vfs2/buildlink2.mk
@@ -1,10 +1,10 @@
-# $NetBSD: buildlink2.mk,v 1.7 2003/04/27 02:03:01 rh Exp $
+# $NetBSD: buildlink2.mk,v 1.8 2003/04/27 14:44:33 jmmv Exp $
.if !defined(GNOME_VFS2_BUILDLINK2_MK)
GNOME_VFS2_BUILDLINK2_MK= # defined
BUILDLINK_PACKAGES+= gnome-vfs2
-BUILDLINK_DEPENDS.gnome-vfs2?= gnome-vfs2>=2.2.4
+BUILDLINK_DEPENDS.gnome-vfs2?= gnome-vfs2>=2.2.4nb1
BUILDLINK_PKGSRCDIR.gnome-vfs2?= ../../sysutils/gnome-vfs2
EVAL_PREFIX+= BUILDLINK_PREFIX.gnome-vfs2=gnome-vfs2
diff --git a/sysutils/gnome-vfs2/distinfo b/sysutils/gnome-vfs2/distinfo
index 2e487be2344..c3d4896dfc2 100644
--- a/sysutils/gnome-vfs2/distinfo
+++ b/sysutils/gnome-vfs2/distinfo
@@ -1,7 +1,8 @@
-$NetBSD: distinfo,v 1.7 2003/04/27 02:03:01 rh Exp $
+$NetBSD: distinfo,v 1.8 2003/04/27 14:44:33 jmmv Exp $
SHA1 (gnome-vfs-2.2.4.tar.bz2) = 40518be379250cb8b6c611c2d585ea35403b3f53
Size (gnome-vfs-2.2.4.tar.bz2) = 999711 bytes
SHA1 (patch-ae) = fbe0fa8e2def2fec2cc55317a35638d8314287d2
SHA1 (patch-ag) = 48a1a7e7b780bcf25f311abe0c48524c8fe9eaa4
SHA1 (patch-ai) = 0cbdf095c4c55a770d13d443d904bb567fee3666
+SHA1 (patch-al) = f6e0f6b68e078e7a115871bb8cb4ea72bef7eab4
diff --git a/sysutils/gnome-vfs2/patches/patch-al b/sysutils/gnome-vfs2/patches/patch-al
new file mode 100644
index 00000000000..751a915e591
--- /dev/null
+++ b/sysutils/gnome-vfs2/patches/patch-al
@@ -0,0 +1,36 @@
+$NetBSD: patch-al,v 1.4 2003/04/27 14:44:34 jmmv Exp $
+
+--- modules/file-method.c.orig 2003-02-24 13:18:31.000000000 +0100
++++ modules/file-method.c
+@@ -806,6 +806,7 @@ do_read_directory (GnomeVFSMethod *metho
+ result = readdir (handle->dir);
+
+ if (result == NULL && errno != 0) {
++ G_UNLOCK (readdir);
+ return gnome_vfs_result_from_errno ();
+ }
+ if (result != NULL) {
+@@ -1113,9 +1114,23 @@ find_trash_in_one_hierarchy_level (const
+
+ item_buffer = g_malloc (sizeof (struct dirent) + GET_PATH_MAX() + 1);
+ for (;;) {
++#ifdef HAVE_READDIR_R
+ if (readdir_r (directory, item_buffer, &item) != 0 || item == NULL) {
+ break;
+ }
++#else
++ G_LOCK (readdir);
++ errno = 0;
++ item = readdir (directory);
++ if (item == NULL || errno != 0) {
++ G_UNLOCK (readdir);
++ break;
++ }
++ if (item != NULL) {
++ memcpy (item_buffer, item, sizeof (struct dirent));
++ }
++ G_UNLOCK (readdir);
++#endif
+
+ if (gnome_vfs_context_check_cancellation (context))
+ break;