diff -d -urpN busybox.3/util-linux/mdev.c busybox.4/util-linux/mdev.c
--- busybox.3/util-linux/mdev.c	2008-04-27 22:36:58.000000000 +0200
+++ busybox.4/util-linux/mdev.c	2008-05-02 14:43:59.000000000 +0200
@@ -159,14 +159,15 @@ static void make_device(char *path, int 
 			if (ENABLE_FEATURE_MDEV_RENAME) {
 				if (!next)
 					break;
-				val = next;
-				next = next_field(val);
-				if (*val == '>') {
+				if (*next == '>') {
 #if ENABLE_FEATURE_MDEV_RENAME_REGEXP
-					/* substitute %1..9 with off[1..9], if any */
 					char *s, *p;
 					unsigned i, n;
-
+#endif
+					val = next;
+					next = next_field(val);
+#if ENABLE_FEATURE_MDEV_RENAME_REGEXP
+					/* substitute %1..9 with off[1..9], if any */
 					n = 0;
 					s = val;
 					while (*s && *s++ == '%')
