ports/129266: port revision: sysutils/xfburn (patch to fix directory atime/mtime error)
J.R. Oldroyd
fbsd at opal.com
Fri Nov 28 19:30:03 UTC 2008
>Number: 129266
>Category: ports
>Synopsis: port revision: sysutils/xfburn (patch to fix directory atime/mtime error)
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: maintainer-update
>Submitter-Id: current-users
>Arrival-Date: Fri Nov 28 19:30:03 UTC 2008
>Closed-Date:
>Last-Modified:
>Originator: J.R. Oldroyd
>Release: FreeBSD 7.1-PRERELEASE i386
>Organization:
>Environment:
System: FreeBSD avera.opal.com 7.1-PRERELEASE FreeBSD 7.1-PRERELEASE #2: Wed Nov 19 23:08:53 UTC 2008 xx at avera.opal.com:/usr/src/sys/i386/compile/AVERA i386
>Description:
This patch fixes an error in xfburn which omits Rock Ridge info for atimes and
mtimes on directories. This patch has been submitted to the xfburn developer
and will be included in a future release.
>How-To-Repeat:
mount an xfburn ISO.
Observe that timestamps on directories are "now" rather than the original
directory's times.
>Fix:
diff -ruN /usr/ports/sysutils/xfburn/Makefile sysutils/xfburn/Makefile
--- /usr/ports/sysutils/xfburn/Makefile 2008-11-21 15:53:17.000000000 -0500
+++ sysutils/xfburn/Makefile 2008-11-25 20:29:05.000000000 -0500
@@ -7,6 +7,7 @@
PORTNAME= xfburn
PORTVERSION= 0.3.91
+PORTREVISION= 1
CATEGORIES= sysutils
MASTER_SITES= http://goodies.xfce.org/releases/xfburn/
@@ -16,7 +17,8 @@
LIB_DEPENDS= burn.23:${PORTSDIR}/devel/libburn \
isofs.12:${PORTSDIR}/devel/libisofs
RUN_DEPENDS= hal-device:${PORTSDIR}/sysutils/hal \
- cdrdao:${PORTSDIR}/sysutils/cdrdao
+ cdrdao:${PORTSDIR}/sysutils/cdrdao \
+ cdrecord:${PORTSDIR}/sysutils/cdrtools
GNU_CONFIGURE= yes
CONFIGURE_ENV= GMSGFMT=${PREFIX}/bin/msgfmt DATADIRNAME=share
@@ -24,8 +26,8 @@
USE_BZIP2= yes
USE_GMAKE= yes
USE_GETTEXT= yes
-INSTALLS_ICONS= yes
USE_GNOME= intltool pkgconfig
USE_XFCE= configenv libexo libgui
+INSTALLS_ICONS= yes
.include <bsd.port.mk>
diff -ruN /usr/ports/sysutils/xfburn/files/patch-xfburn-xfburn-data-composition.c xfburn/files/patch-xfburn-xfburn-data-composition.c
--- /usr/ports/sysutils/xfburn/files/patch-xfburn-xfburn-data-composition.c 1969-12-31 19:00:00.000000000 -0500
+++ sysutils/xfburn/files/patch-xfburn-xfburn-data-composition.c 2008-11-16 21:45:37.000000000 -0500
@@ -0,0 +1,47 @@
+--- xfburn/xfburn-data-composition.c.orig 2008-09-14 04:41:53.000000000 -0400
++++ xfburn/xfburn-data-composition.c 2008-11-16 19:57:03.000000000 -0500
+@@ -1099,6 +1099,7 @@
+ DATA_COMPOSITION_COLUMN_ICON, icon_directory,
+ DATA_COMPOSITION_COLUMN_CONTENT, name,
+ DATA_COMPOSITION_COLUMN_TYPE, DATA_COMPOSITION_TYPE_DIRECTORY,
++ DATA_COMPOSITION_COLUMN_PATH, path,
+ DATA_COMPOSITION_COLUMN_SIZE, (guint64) 4, -1);
+ xfburn_disc_usage_add_size (XFBURN_DISC_USAGE (priv->disc_usage), (guint64) 4);
+ gdk_threads_leave ();
+@@ -1742,10 +1743,7 @@
+ gtk_tree_model_get (model, iter, DATA_COMPOSITION_COLUMN_TYPE, &type,
+ DATA_COMPOSITION_COLUMN_CONTENT, &name, DATA_COMPOSITION_COLUMN_PATH, &src, -1);
+
+- if (type == DATA_COMPOSITION_TYPE_DIRECTORY)
+- r = iso_tree_add_new_dir (parent, name, &dir);
+- else
+- r = iso_tree_add_node (image, parent, src, &node);
++ r = iso_tree_add_node (image, parent, src, &node);
+
+ if (r < 0) {
+ if (r == ISO_NULL_POINTER)
+@@ -1758,9 +1756,11 @@
+ g_error ("Failed adding %s as a node to the image: code %d!", src, r);
+ }
+
+- /* FIXME: do we need to call iso_node_ref on node? Probably not... */
++ /* why was this called again? iso_tree_add_node seems to do
++ * a good job setting the name by itself.
+ if (type != DATA_COMPOSITION_TYPE_DIRECTORY)
+ iso_node_set_name (node, name);
++ */
+
+ g_free (name);
+ g_free (src);
+@@ -1768,10 +1768,9 @@
+ if (type == DATA_COMPOSITION_TYPE_DIRECTORY && gtk_tree_model_iter_has_child (model, iter)) {
+ GtkTreeIter child;
+
+- /* FIXME: this should not cause a sigfault...
+ if (iso_node_get_type(node) != LIBISO_DIR)
+ g_error ("Expected %s to be a directory, but it isn't...\n", src);
+- */
++ dir = (IsoDir *)node;
+
+ gtk_tree_model_iter_children (model, &child, iter);
+ fill_image_with_composition (model, image, dir, &child);
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list