diff options
| author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-07-18 00:19:10 +0000 |
|---|---|---|
| committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-07-18 00:19:10 +0000 |
| commit | e873e9269be48d08e1c42ba46240e949006db5ac (patch) | |
| tree | 8b1b0e5114418465bc35aa55abb0893716199162 /parse.y | |
| parent | 59b946f574ec11e3d60aa0ab4f94dbc8c33578f8 (diff) | |
| download | ruby-e873e9269be48d08e1c42ba46240e949006db5ac.tar.gz ruby-e873e9269be48d08e1c42ba46240e949006db5ac.tar.xz ruby-e873e9269be48d08e1c42ba46240e949006db5ac.zip | |
* parse.y (rb_parser_append_print, rb_parser_while_loop): moved check
for node to the head.
* ruby.c (proc_options): do nothing for -p/-n options if tree is null.
submitted by Yusuke ENDOH <mame AT tsg.ne.jp> at [ruby-dev:31243].
git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@12812 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'parse.y')
| -rw-r--r-- | parse.y | 8 |
1 files changed, 6 insertions, 2 deletions
@@ -8110,11 +8110,13 @@ rb_parser_append_print(VALUE vparser, NODE *node) NODE *scope = node; struct parser_params *parser; + if (!node) return node; + Data_Get_Struct(vparser, struct parser_params, parser); node = node->nd_body; - if (node && (nd_type(node) == NODE_PRELUDE)) { + if (nd_type(node) == NODE_PRELUDE) { prelude = node; node = node->nd_body; } @@ -8140,11 +8142,13 @@ rb_parser_while_loop(VALUE vparser, NODE *node, int chop, int split) NODE *scope = node; struct parser_params *parser; + if (!node) return node; + Data_Get_Struct(vparser, struct parser_params, parser); node = node->nd_body; - if (node && (nd_type(node) == NODE_PRELUDE)) { + if (nd_type(node) == NODE_PRELUDE) { prelude = node; node = node->nd_body; } |
