On Sun, Jan 30, 2005 at 12:42:04PM +0000, Colin Watson wrote: > On Sun, Jan 30, 2005 at 07:35:03AM +0100, Sven Luther wrote: > > On Wed, Nov 17, 2004 at 03:21:04PM +0000, Colin Watson wrote: > > > On Wed, Nov 17, 2004 at 04:15:18PM +0100, Sven Luther wrote: > > > > On Wed, Nov 17, 2004 at 03:00:04PM +0000, Colin Watson wrote: > > > > > http://people.ubuntulinux.org/patches/parted-udev-devfs-rules.patch > > > > Arg, this patch has dissapeared from there, i suppose i could find it in the > > ubuntu parted packages, but it is non-obvious to me yet how to find it. > > http://patches.ubuntulinux.org/patches/parted-udev-devfs-rules.patch > > Sorry about that.
And here is the real patch for completeness sake. Friendly, Sven Luther
diff -u parted-1.6.11/debian/patches/00list parted-1.6.11/debian/patches/00list --- parted-1.6.11/debian/patches/00list +++ parted-1.6.11/debian/patches/00list @@ -16,0 +17 @@ +udev-devfs-rules diff -u parted-1.6.11/debian/changelog parted-1.6.11/debian/changelog --- parted-1.6.11/debian/changelog +++ parted-1.6.11/debian/changelog @@ -1,3 +1,10 @@ +parted (1.6.11-8ubuntu1) hoary; urgency=low + + * Calculate partition paths correctly on systems where udev is being used + with devfs rules. + + -- Colin Watson <[EMAIL PROTECTED]> Wed, 17 Nov 2004 13:51:40 +0000 + parted (1.6.11-8) unstable; urgency=low * Now build depends on libreadline4-dev | libreadline-dev, to work around only in patch2: unchanged: --- parted-1.6.11.orig/debian/patches/udev-devfs-rules.dpatch +++ parted-1.6.11/debian/patches/udev-devfs-rules.dpatch @@ -0,0 +1,34 @@ +#! /bin/sh -e +## udev-devfs-rules.dpatch by Colin Watson <[EMAIL PROTECTED]> +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Calculate partition paths correctly on systems where udev is being +## DP: used with devfs rules. + +. $(dirname $0)/DPATCH + [EMAIL PROTECTED]@ +diff -ru parted-1.6.11.orig/libparted/linux.c parted-1.6.11/libparted/linux.c +--- parted-1.6.11.orig/libparted/linux.c 2004-04-25 04:52:29.000000000 +0100 ++++ parted-1.6.11/libparted/linux.c 2004-11-17 13:47:18.941933008 +0000 +@@ -1443,7 +1443,8 @@ + static char* + _device_get_part_path (PedDevice* dev, int num) + { +- int result_len = strlen (dev->path) + 16; ++ int len = strlen (dev->path); ++ int result_len = len + 16; + char* result; + + result = (char*) ped_malloc (result_len); +@@ -1451,9 +1452,7 @@ + return NULL; + + /* FIXME: how do we know if a device is devfs or not? */ +- if (_have_devfs()) { +- int len = strlen (dev->path); +- ++ if (_have_devfs() || !strcmp (dev->path + len - 5, "/disc")) { + strcpy (result, dev->path); + + /* strip "/disc" from the end */