[#71439] [Ruby trunk - Feature #11339] [PATCH] io.c: avoid kwarg parsing in C API — matz@...
Issue #11339 has been updated by Yukihiro Matsumoto.
7 messages
2015/11/11
[#71473] Re: [Ruby trunk - Feature #11339] [PATCH] io.c: avoid kwarg parsing in C API
— Eric Wong <normalperson@...>
2015/11/13
Entire series for sockets
[#71450] Ruby 2.3.0-preview1 Released — "NARUSE, Yui" <naruse@...>
Hi,
5 messages
2015/11/11
[#71617] [Ruby trunk - Feature #11664] [PATCH] introduce rb_autoload_value to replace rb_autoload — nobu@...
Issue #11664 has been updated by Nobuyoshi Nakada.
3 messages
2015/11/20
[#71721] [Ruby trunk - Feature #11741] Migrate Ruby to Git from Subversion — me@...
Issue #11741 has been updated by Jon Moss.
4 messages
2015/11/28
[ruby-core:71389] [Ruby trunk - Bug #11668] [Open] SEGV instead of SystemStackError when using the TracePoint API
From:
deivid.rodriguez@...
Date:
2015-11-09 04:38:07 UTC
List:
ruby-core #71389
Issue #11668 has been reported by David Rodr鱈guez.
----------------------------------------
Bug #11668: SEGV instead of SystemStackError when using the TracePoint API
https://bugs.ruby-lang.org/issues/11668
* Author: David Rodr鱈guez
* Status: Open
* Priority: Normal
* Assignee:
* ruby -v: ruby 2.3.0dev (2015-11-09 trunk 52499) [x86_64-linux
* Backport: 2.0.0: UNKNOWN, 2.1: UNKNOWN, 2.2: UNKNOWN
----------------------------------------
**fixnum_monkey.rb**
~~~
class Fixnum
define_method(:to_s) do |*args|
to_default_s(*args)
end
alias_method :to_default_s, :to_s
end
~~~
If I use this code normally it gives me SystemStackError as expected
~~~
$ ruby -e "load('fixnum_monkey.rb'); 5.to_s"
fixnum_monkey.rb:2:in `block in <class:Fixnum>': stack level too deep (SystemStackError)
from fixnum_monkey.rb:3:in `block in <class:Fixnum>'
from fixnum_monkey.rb:3:in `block in <class:Fixnum>'
from fixnum_monkey.rb:3:in `block in <class:Fixnum>'
from fixnum_monkey.rb:3:in `block in <class:Fixnum>'
from fixnum_monkey.rb:3:in `block in <class:Fixnum>'
from fixnum_monkey.rb:3:in `block in <class:Fixnum>'
from fixnum_monkey.rb:3:in `block in <class:Fixnum>'
from fixnum_monkey.rb:3:in `block in <class:Fixnum>'
... 5804 levels...
from fixnum_monkey.rb:3:in `block in <class:Fixnum>'
from fixnum_monkey.rb:3:in `block in <class:Fixnum>'
from fixnum_monkey.rb:3:in `block in <class:Fixnum>'
from -e:1:in `<main>'
~~~
But if I enable the `return` event of the TracePoint API before using it, I get a segfault
~~~
$ ruby -e "load('fixnum_monkey.rb'); TracePoint.trace(:return) { |_tp| }; 5.to_s"
Violaci坦n de segmento
~~~
--
https://bugs.ruby-lang.org/