dupemerge: make inode sort order strictly numeric
authorZygo Blaxell <zblaxell@faye.furryterror.org>
Wed, 6 Jan 2010 16:59:49 +0000 (11:59 -0500)
committerZygo Blaxell <zblaxell@waya.furryterror.org>
Sat, 9 Jan 2010 02:22:02 +0000 (21:22 -0500)
faster-dupemerge

index 8df7885878b2085bb2cfc8b61e05566c239225b0..5028ca8df29cd94690482378926b56f72a307776 100755 (executable)
@@ -543,9 +543,11 @@ end_merge:
 }
 
 while (<FIND>) {
-       my ($weak_key, $inode, $name) = m/^(\d+ \d+ \d+ \d+ -?[\d.]+) (\d+:\d+) (.+)\0$/so;
+       my ($weak_key, $dev, $ino, $name) = m/^(\d+ \d+ \d+ \d+ -?[\d.]+) (\d+):(\d+) (.+)\0$/so;
        die "read error: $!\nLast input line was '$_'" unless defined($name);
 
+       my $inode = sprintf('%016x:%016x', $dev, $ino);
+
        print STDERR "weak_key=$weak_key inode=$inode name=$name\n" if $debug;
 
        unless (! (-l $name) && (-f _)) {