From ceef847ec4090f9fb70dc01473166b8f0a79dcce Mon Sep 17 00:00:00 2001 From: Pavel Roskin Date: Tue, 12 Feb 2002 17:47:27 +0000 Subject: [PATCH] * extfs/lslR.in: Fix parsing of old entries (with year number). From Daniel Skarda <0rfelyus@atrey.karlin.mff.cuni.cz> --- vfs/ChangeLog | 5 +++++ vfs/extfs/lslR.in | 14 ++++++++++---- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/vfs/ChangeLog b/vfs/ChangeLog index 9b0beadc8..afc24bbf3 100644 --- a/vfs/ChangeLog +++ b/vfs/ChangeLog @@ -1,3 +1,8 @@ +2002-02-12 Pavel Roskin + + * extfs/lslR.in: Fix parsing of old entries (with year number). + From Daniel Skarda <0rfelyus@atrey.karlin.mff.cuni.cz> + 2002-02-08 Andrew V. Samoilov * direntry.c (vfs_s_retrieve_file): Use off_t for total diff --git a/vfs/extfs/lslR.in b/vfs/extfs/lslR.in index 61e26e936..b9b445e24 100644 --- a/vfs/extfs/lslR.in +++ b/vfs/extfs/lslR.in @@ -16,7 +16,12 @@ case "$1" in esac $MYCAT "$1" | @AWK@ ' -BEGIN { dir="" } +BEGIN { + dir=""; + # Pattern to match 8 first fields. + rx = "[^ ]+[ ]+"; + rx = "^" rx rx rx rx rx rx rx rx; +} /^total\ [0-9]*$/ { next } /^$/ { next } /^[^ ].*:$/ { @@ -26,10 +31,11 @@ BEGIN { dir="" } else sub(/:$/, "/", dir); next; } -/:/ { - # gensub is not portable. +{ $9 != "" } { + # gensub() is not portable. name=$0 - sub(/^[^:]+:[^ ]+[ ]+/, "", name) + sub(rx, "", name) + # Cannot assign to $9, or spaces in the filename would be reduced. attr=substr($0, 1, length($0)-length(name)) printf "%s%s%s\n", attr, dir, name }' 2>/dev/null