Hi,

I believe I've found a bug in RDoc::usage_no_exit that manifests itself on 
Windows machines; the splitting of a caller entry results in the drive only 
being returned as the file name. Example output:

D:/Tools/Ruby1.8.2-14/lib/ruby/1.8/rdoc/usage.rb:100:in `initialize': No 
such file or directory - D (Errno::ENOENT)
        from D:/Tools/Ruby1.8.2-14/lib/ruby/1.8/rdoc/usage.rb:100:in `open'
        from D:/Tools/Ruby1.8.2-14/lib/ruby/1.8/rdoc/usage.rb:100:in 
`usage_no_exit'
        from D:/Tools/Ruby1.8.2-14/lib/ruby/1.8/rdoc/usage.rb:93:in `usage'
        from D:/Data/scripts/posnet/utils/logcvt/logcvt.rb:188

This is the culprit (rdoc/usage.rb):

99:   def RDoc.usage_no_exit(*args)
100:    main_program_file, = caller[-1].split(/:/, 2) <==

Changing to:

100:    main_program_file, = caller[-1].split(/:\d+/, 2)

seems to fix it (at least for me).


Best regards,

Johan Nilsson