Bug #4793

特定のSyntaxErrorでirbが落ちる

Added by Kazuki Tsujimoto over 4 years ago. Updated about 4 years ago.

[ruby-dev:43594]
Status:Closed
Priority:Normal
Assignee:Keiju Ishitsuka
ruby -v:ruby 1.9.3dev (2011-04-16 trunk 31298) [x86_64-linux] Backport:

Description

=begin
以下のコードでirbが落ちます。

$ ./ruby -Ilib bin/irb
irb(main):001:0> next
SyntaxError: (irb):1: Can't escape from eval with next
/home/k_tsj/work/ruby-trunk/lib/irb/workspace.rb:100:in sub!': can't modify frozen String (RuntimeError)
(snip)
from bin/irb:12:in
'

パッチです。

diff --git a/lib/irb/workspace.rb b/lib/irb/workspace.rb
index 991df2e..dd781f6 100644
--- a/lib/irb/workspace.rb
+++ b/lib/irb/workspace.rb
@@ -97,7 +97,7 @@ EOF
when 3
return nil if bt =~ /irb\/..rb/
return nil if bt =~ /irb.rb/
- bt.sub!(/:\s*in `irb_binding'/, '')
+ bt = bt.sub(/:\s
in `irb_binding'/, '')
end
bt
end
=end

History

#1 Updated by Kazuhiro NISHIYAMA about 4 years ago

  • Category set to lib
  • Assignee set to Keiju Ishitsuka
  • Target version set to 1.9.3

#2 Updated by Keiju Ishitsuka about 4 years ago

  • Status changed from Open to Closed

パッチ適用しました。

Also available in: Atom PDF