Hi.

>>c:\ruby184\bin\irb
>irb(main):001:0> VERSION
>=> "1.8.4"
>irb(main):002:0> dir = Dir.new(Dir.pwd)
>=> #<Dir:0x287ec70>
>irb(main):003:0> dir.read
>=> "."
>irb(main):004:0> dir.seek(1)
>=> #<Dir:0x287ec70>
>irb(main):005:0> dir.read
>(irb):5: [BUG] Segmentation fault
>ruby 1.8.4 (2005-12-24) [i386-mswin32]
>
>
>This application has requested the Runtime to terminate it in an unusual way.
>Please contact the application's support team for more information.
>
>The Dir#tell results don't exactly look like what I would expect:
>
>=> #<Dir:0x29d25c8>
>irb(main):002:0> dir.read
>=> "."
>irb(main):003:0> i = dir.tell
>=> 42886538
>
>Perhaps there's a correlation.  I suspect this is a Windows specific bug.

You should pass postion which Dir#tell returns. Otherwise, behavior is unspecified.

But I think SEGV is not good even if so. I'll fix it.

# And I found my own bug on ruby 1.9 while survey.
# seekdir in win32/win32.c must update `bitpos`. :-(