vfs bug
Horvath Szabolcs
hsz at sth.sze.hu
Mon Jan 5 18:07:52 UTC 2004
Hello!
There is a little bug in the ftpfs/vfs code.
If you browse an ftp server, and list a dir where some filename begins
with 4 digit, they appear wrong in the list.
ncftp / > cd Kraftwerk/
ncftp /Kraftwerk > ls -l
drwxr-xr-x 4 1091 group 4096 dec 21 11:56 1970 Kraftwerk
drwxr-xr-x 4 1091 group 4096 dec 21 13:03 1972 Kraftwerk 2
drwxr-xr-x 4 1091 group 4096 dec 21 14:02 1973 Ralf & Florian
drwxr-xr-x 4 1091 group 4096 dec 21 15:08 1974 Autobahn
drwxr-xr-x 4 1091 group 4096 dec 21 16:06 1975 Radio-Activity
drwxr-xr-x 4 1091 group 4096 dec 21 16:50 1977 Showroom Dummies
drwxr-xr-x 4 1091 group 4096 dec 21 17:56 1977 Trans Europa Express (German)
drwxr-xr-x 3 1091 group 4096 dec 22 03:07 Kraftwerk_-_THX_1138_(Autobahn_Cologne-Paris)_(2003)-WOS
drwxr-xr-x 4 1091 group 4096 dec 22 01:13 Kraftwerk-Tour_De_France_Soundtracks_TRACKFIXED-2003
Backtraced and found the bug here:
int vfs_parse_filedate (int idx, time_t *t) {
//..
/* This is a special case for ctime() or Mon DD YYYY hh:mm */
if (is_num (idx) && (columns[idx + 1][0])) {
if (got_year) {
if (is_time (columns[idx], &tim))
idx++; /* time also */
} else {
if ((got_year = is_year(columns[idx], &tim)))
idx++; /* year also */
}
}
//..
I've made a workaround (comment out the else part), and now it works fine.
I hope you'll see what I mean, and sorry for my bad English.
If you reply to this letter, please Cc: me, because I'm not subscribed.
Best regards,
Szabolcs Horvath
More information about the mc-devel
mailing list