diff options
Diffstat (limited to 'bin/rdoc')
-rwxr-xr-x | bin/rdoc | 23 |
1 files changed, 18 insertions, 5 deletions
@@ -13,10 +13,23 @@ require 'rdoc/rdoc' begin r = RDoc::RDoc.new r.document ARGV -rescue Interrupt - $stderr.puts - $stderr.puts "Interrupted" -rescue RDoc::Error => e - $stderr.puts e.message +rescue SystemExit + raise +rescue Exception => e + if $DEBUG_RDOC then + $stderr.puts e.message + $stderr.puts "#{e.backtrace.join "\n\t"}" + $stderr.puts + elsif Interrupt === e then + $stderr.puts + $stderr.puts 'Interrupted' + else + $stderr.puts "uh-oh! RDoc had a problem:" + $stderr.puts e.message + $stderr.puts + $stderr.puts "run with --debug for full backtrace" + end + exit 1 end + |