山本です。[ruby-dev:22470]にバグがあったので修正しました。

dir.c.1の1020行目と、dir.c.5の1029行目の

  do_lstat(..) && S_ISDIR(..) 

は、ディレクトリへのシンボリックリンクにマッチしていなかったので、

  do_stat(..) && S_ISDIR(..)

に変更しました。

dead symlink は、* のようなパターンにはマッチすべきですが、
*/ のようなディレクトリ指定パターンにはマッチすべきでないので、
Rev1.71の修正にも違反しないと思います。

# NTFS5のハードリンク・シンボリックリンクについて調べましたが、
# C++Builderの最新バージョン6でも、依然としてlstatが実装されていない
# ようです。GetFileAttributes では FILE_ATTRIBUTE_REPARSE_POINT という
# フラグでリンクかどうかわかるんですけど。