Project

General

Profile

Actions

Bug #4290

closed

!_=%w~ dumps core

Added by mame (Yusuke Endoh) almost 14 years ago. Updated over 13 years ago.

Status:
Closed
Target version:
ruby -v:
ruby 1.9.3dev (2011-01-18 trunk 30590) [i686-linux]
Backport:
[ruby-dev:43067]

Description

=begin
遠藤です。

以下で SEGV します。

$ ./miniruby -e '!_=%w~'
-e:1: unterminated string meets end of file
./miniruby: [BUG] Segmentation fault
ruby 1.9.3dev (2011-01-18 trunk 30590) [i686-linux]

条件式の代入文の値に壊れた %w を置くと起きるようです。

diff --git a/parse.y b/parse.y
index bbe842e..b4ee019 100644
--- a/parse.y
+++ b/parse.y
@@ -8684,6 +8684,7 @@ assign_in_cond(struct parser_params *parser, NODE *node)
return 0;
}

  • if (!node->nd_value) return 1;
    switch (nd_type(node->nd_value)) {
    case NODE_LIT:
    case NODE_STR:

--
Yusuke Endoh
=end

Actions

Also available in: Atom PDF

Like0
Like0