Hi, Pavel Tsekov drew my attention to the fact that the fact that we now only parse dates with 3 elements (either year or time, not both) broke mailfs. I intend to fix this, but haven't had time to look into this thoroughly.
The representation for files younger and older than 6 months use either time or year in the third field. However, there's a bit of an issue as to what constitutes to 6 months that I need to investigate before I can commit a correct fix. GNU ls seems to change at 180 or 181 days in the past (not sure why this is inconsistent) but I'm unsure what mc assumes internally (this day 6 months ago?). Anyway, if you are using mc from CVS and using mailfs you can temporarily use the attached patch which parses the date values back to 3 fields (year, not time). This causes all times for emails younger than 6 months to be represented as 00:00 which is ugly but at least it gets rid of the year in the mail name. I hope to find some time to fix this issue correctly next week (or the week after that ;) . Leonard. -- mount -t life -o ro /dev/dna /genetic/research
--- mailfs.in.000 2002-12-24 07:56:17.000000000 +0100 +++ mailfs.in 2006-05-14 00:03:22.000000000 +0200 @@ -21,7 +21,7 @@ if (eval "require Date::Manip") { $parse_date= sub { local $_ =localtime(str2time($_[0],$TZ)); - s/^... (.+) (\d\d:\d\d):\d\d (\d\d\d\d)$/$1 $3 $2/; + s/^... (.+) (\d\d:\d\d):\d\d (\d\d\d\d)$/$1 $2/; return $_; } } else { # use "light" version @@ -29,7 +29,7 @@ if (eval "require Date::Manip") { # assumes something like: Mon, 5 Jan 1998 16:08:19 +0200 (GMT+0200) # if you have mails with another date format, add it here if (/(\d\d?) ([A-Z][a-z][a-z]) (\d\d\d\d) (\d\d?:\d\d)/) { - return "$2 $1 $3 $4"; + return "$2 $1 $3"; } # Y2K bug. # Date: Mon, 27 Mar 100 16:30:47 +0000 (GMT) @@ -38,12 +38,12 @@ if (eval "require Date::Manip") { if ($correct_year < 1970) { $correct_year += 100; } - return "$2 $1 $correct_year $4"; + return "$2 $1 $correct_year"; } # AOLMail(SM). # Date: Sat Jul 01 10:06:06 2000 if (/([A-Z][a-z][a-z]) (\d\d?) (\d\d?:\d\d)(:\d\d)? (\d\d\d\d)/) { - return "$1 $2 $5 $3"; + return "$1 $2 $5"; } # Fallback return localtime(time);
_______________________________________________ Mc-devel mailing list http://mail.gnome.org/mailman/listinfo/mc-devel