Actions
Bug #11047
closedSEGV in ruby_yyparse
Status:
Closed
Assignee:
-
Target version:
-
ruby -v:
ruby 2.2.2p88 (2015-03-25 revision 50085) [x86_64-linux]
Description
Hello,
Please find attached half a dozen test cases that cause the ruby parser (either in a script or via eval
as below) to throw a segmentation violation due to stack corruption. Using 2.2-head on Ubuntu 14.04.
To reproduce:
ruby -e 'eval STDIN.read' < input_file
Expected result:
"Syntax error" or similar.
Backtrace:
All backtraces point only to ruby_yyparse()
and I have not dug deeper:
/home/martin/.rvm/rubies/ruby-2.2-head/lib/libruby.so.2.2(rb_vm_bugreport+0x51f) [0x7f5e164af7ff] vm_dump.c:693
/home/martin/.rvm/rubies/ruby-2.2-head/lib/libruby.so.2.2(rb_bug_context+0xcb) [0x7f5e1634390b] error.c:425
/home/martin/.rvm/rubies/ruby-2.2-head/lib/libruby.so.2.2(sigsegv+0x3e) [0x7f5e1642305e] signal.c:879
/lib/x86_64-linux-gnu/libc.so.6 [0x7f5e15f35d40]
/home/martin/.rvm/rubies/ruby-2.2-head/lib/libruby.so.2.2(ruby_yyparse+0x77d4) [0x7f5e163ca714] parse.y:2103
/home/martin/.rvm/rubies/ruby-2.2-head/lib/libruby.so.2.2(yycompile0+0xef) [0x7f5e163d2e0f] parse.y:5514
/home/martin/.rvm/rubies/ruby-2.2-head/lib/libruby.so.2.2(rb_suppress_tracing+0xf7) [0x7f5e164b4de7] vm_trace.c:406
/home/martin/.rvm/rubies/ruby-2.2-head/lib/libruby.so.2.2(rb_parser_compile_file_path+0xa5) [0x7f5e163c2105] parse.y:5547
/home/martin/.rvm/rubies/ruby-2.2-head/lib/libruby.so.2.2(load_file_internal2+0xc5) [0x7f5e16421255] ruby.c:1655
/home/martin/.rvm/rubies/ruby-2.2-head/lib/libruby.so.2.2(rb_protect+0x100) [0x7f5e1634be40] eval.c:876
/home/martin/.rvm/rubies/ruby-2.2-head/lib/libruby.so.2.2(load_file_internal+0xd2) [0x7f5e1641ef02] ruby.c:1709
/home/martin/.rvm/rubies/ruby-2.2-head/lib/libruby.so.2.2(rb_ensure+0xb8) [0x7f5e1634c068] eval.c:907
/home/martin/.rvm/rubies/ruby-2.2-head/lib/libruby.so.2.2(process_options+0x9e1) [0x7f5e164223d1] ruby.c:1751
/home/martin/.rvm/rubies/ruby-2.2-head/lib/libruby.so.2.2(ruby_process_options+0xe8) [0x7f5e16422968] ruby.c:1966
/home/martin/.rvm/rubies/ruby-2.2-head/lib/libruby.so.2.2(ruby_options+0xb2) [0x7f5e1634d482] eval.c:100
/home/martin/.rvm/rubies/ruby-2.2-head/bin/ruby(main+0x43) [0x400883] main.c:36
Files
Updated by mcarpenter (Martin Carpenter) over 9 years ago
ps. originally discovered under 2.1.5
Updated by cremno (cremno phobia) over 9 years ago
I believe this already has been fixed, but not yet backported to 2.2. See #10957.
Updated by nobu (Nobuyoshi Nakada) over 9 years ago
- Status changed from Open to Closed
- Backport changed from 2.0.0: UNKNOWN, 2.1: UNKNOWN, 2.2: UNKNOWN to 2.0.0: REQUIRED, 2.1: DONE, 2.2: REQUIRED
Updated by nagachika (Tomoyuki Chikanaga) over 9 years ago
- Backport changed from 2.0.0: REQUIRED, 2.1: DONE, 2.2: REQUIRED to 2.0.0: REQUIRED, 2.1: DONE, 2.2: DONE
r49964 and r50265 were backported into ruby_2_2
branch at r50277.
Actions
Like0
Like0Like0Like0Like0