Bug #3391 ยป exclamation_mark_irb_fix.diff
| lib/irb.rb | ||
|---|---|---|
|
def IRB.irb_abort(irb, exception = Abort)
|
||
|
if defined? Thread
|
||
|
irb.context.thread.raise exception, "abort then interrupt!!"
|
||
|
irb.context.thread.raise exception, "abort then interrupt!"
|
||
|
else
|
||
|
raise exception, "abort then interrupt!!"
|
||
|
raise exception, "abort then interrupt!"
|
||
|
end
|
||
|
end
|
||
| ... | ... | |
|
printf "... %d levels...\n", levels if levels > 0
|
||
|
print lasts.join("\n")
|
||
|
end
|
||
|
print "Maybe IRB bug!!\n" if irb_bug
|
||
|
print "Maybe IRB bug!\n" if irb_bug
|
||
|
end
|
||
|
if $SAFE > 2
|
||
|
abort "Error: irb does not work for $SAFE level higher than 2"
|
||
| ... | ... | |
|
def signal_handle
|
||
|
unless @context.ignore_sigint?
|
||
|
print "\nabort!!\n" if @context.verbose?
|
||
|
print "\nabort!\n" if @context.verbose?
|
||
|
exit
|
||
|
end
|
||