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