summaryrefslogtreecommitdiff
path: root/sysutils/fuser
diff options
context:
space:
mode:
authorStanislav Sedov <stas@FreeBSD.org>2009-06-07 09:01:13 +0000
committerStanislav Sedov <stas@FreeBSD.org>2009-06-07 09:01:13 +0000
commitba48bb444f33c3e3ce9aabdf346d6aabadf4ea7c (patch)
tree3843d03f32b1acdaa40c6b9ea23663d873c28165 /sysutils/fuser
parent- Mention that supported Gtk+ version is 1.2.x (legacy one) (diff)
- Fix on current.
Notes
Notes: svn path=/head/; revision=235354
Diffstat (limited to 'sysutils/fuser')
-rw-r--r--sysutils/fuser/Makefile6
-rw-r--r--sysutils/fuser/files/extra::patch-msdosfs.c25
2 files changed, 28 insertions, 3 deletions
diff --git a/sysutils/fuser/Makefile b/sysutils/fuser/Makefile
index af490e2cef0e..1379da6dfbe9 100644
--- a/sysutils/fuser/Makefile
+++ b/sysutils/fuser/Makefile
@@ -24,13 +24,13 @@ PLIST_FILES= bin/fuser
.include <bsd.port.pre.mk>
-.if ${OSVERSION} >= 800066
-BROKEN= does not build
-.endif
.if (${OSVERSION} > 800000)
EXTRA_PATCHES+= ${FILESDIR}/extra::patch-fuser.c \
${FILESDIR}/extra::patch-fuser.h
.endif
+.if ${OSVERSION} >= 800066
+EXTRA_PATCHES+= ${FILESDIR}/extra::patch-msdosfs.c
+.endif
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/${PORTNAME} ${PREFIX}/bin
diff --git a/sysutils/fuser/files/extra::patch-msdosfs.c b/sysutils/fuser/files/extra::patch-msdosfs.c
new file mode 100644
index 000000000000..1cf9268ff476
--- /dev/null
+++ b/sysutils/fuser/files/extra::patch-msdosfs.c
@@ -0,0 +1,25 @@
+--- msdosfs.c.orig 2009-06-07 12:53:34.000000000 +0400
++++ msdosfs.c 2009-06-07 12:57:41.000000000 +0400
+@@ -72,6 +72,7 @@
+ struct denode denode;
+ u_long dirsperblk;
+ struct msdosfsmount mnt;
++ struct vnode devvp;
+ int fileid;
+ int ret;
+
+@@ -90,7 +91,13 @@
+ return 1;
+ }
+
+- fsp->dev = dev2udev(denode.de_dev);
++ ret = KVM_READ(kd, mnt.pm_devvp, &devvp, sizeof(devvp));
++ if (ret != sizeof(devvp)) {
++ warnx("can't read vnode info at %p\n", (void *)mnt.pm_devvp);
++ return 1;
++ }
++
++ fsp->dev = dev2udev(devvp.v_rdev);
+
+ /*
+ * XXX -