なかだです。

  File#expand_path の引数に "." が三個以上つながったファイル名が
含まれていると、正しく展開してくれません。

$ ruby -e 'ARGV.each {|f|' \
       -e   'puts "#{f} -> #{File.expand_path(f)}"' \
       -e '}' ... .... ..... ......
... -> /home/nobu/Mail/draft/..
.... -> /home/nobu/Mail/draft
..... -> /home/nobu/Mail/draft/....
...... -> /home/nobu/Mail/draft


--- dist/file.c Tue Dec 14 18:10:21 1999 +++ build/file.c Mon Dec 20 19:08:12 1999 @@ -1244,5 +1244,5 @@ rb_file_s_expand_path(argc, argv) while (p > buf && *(p - 1) == '/') p--; } - else if (isdirsep(*s)) { + else { while (*s && isdirsep(*s)) { *p++ = '/'; @@ -1266,5 +1266,6 @@ rb_file_s_expand_path(argc, argv) else { *++p = '.'; - *++p = '.'; + do *++p = '.'; while (*++s == '.'); + --s; } break;
-- そうだ 強気に ちょっと インチキに☆彡 中田 "Bugるくらいがちょうどいいかも;-)" 伸悦