* parse.y (lex_getline): should not touch ruby_debug_lines if
RIPPER is defined. [ruby-dev:24547] * string.c (str_gsub): reentrant check. [ruby-dev:24432] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7091 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
93931a0d93
commit
7d7d82463d
@ -1,3 +1,12 @@
|
|||||||
|
Thu Oct 21 00:36:41 2004 Yukihiro Matsumoto <matz@ruby-lang.org>
|
||||||
|
|
||||||
|
* parse.y (lex_getline): should not touch ruby_debug_lines if
|
||||||
|
RIPPER is defined. [ruby-dev:24547]
|
||||||
|
|
||||||
|
Wed Oct 20 19:45:13 2004 Yukihiro Matsumoto <matz@ruby-lang.org>
|
||||||
|
|
||||||
|
* string.c (str_gsub): reentrant check. [ruby-dev:24432]
|
||||||
|
|
||||||
Wed Oct 20 12:42:53 2004 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
Wed Oct 20 12:42:53 2004 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
||||||
|
|
||||||
* io.c (rb_io_getline): rs modification check should not interfere
|
* io.c (rb_io_getline): rs modification check should not interfere
|
||||||
|
3
io.c
3
io.c
@ -1131,6 +1131,9 @@ io_readpartial(argc, argv, io)
|
|||||||
return str;
|
return str;
|
||||||
|
|
||||||
READ_CHECK(fptr->f);
|
READ_CHECK(fptr->f);
|
||||||
|
if (RSTRING(str)->len != len) {
|
||||||
|
rb_raise(rb_eRuntimeError, "buffer string modified");
|
||||||
|
}
|
||||||
n = read_buffered_data(RSTRING(str)->ptr, len, fptr->f);
|
n = read_buffered_data(RSTRING(str)->ptr, len, fptr->f);
|
||||||
if (n <= 0) {
|
if (n <= 0) {
|
||||||
again:
|
again:
|
||||||
|
2
parse.y
2
parse.y
@ -4404,9 +4404,11 @@ lex_getline(parser)
|
|||||||
struct parser_params *parser;
|
struct parser_params *parser;
|
||||||
{
|
{
|
||||||
VALUE line = (*parser->parser_lex_gets)(parser, parser->parser_lex_input);
|
VALUE line = (*parser->parser_lex_gets)(parser, parser->parser_lex_input);
|
||||||
|
#ifndef RIPPER
|
||||||
if (ruby_debug_lines && !NIL_P(line)) {
|
if (ruby_debug_lines && !NIL_P(line)) {
|
||||||
rb_ary_push(ruby_debug_lines, line);
|
rb_ary_push(ruby_debug_lines, line);
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
return line;
|
return line;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
3
string.c
3
string.c
@ -2048,6 +2048,9 @@ str_gsub(argc, argv, str, bang)
|
|||||||
if (iter) {
|
if (iter) {
|
||||||
rb_match_busy(match);
|
rb_match_busy(match);
|
||||||
val = rb_obj_as_string(rb_yield(rb_reg_nth_match(0, match)));
|
val = rb_obj_as_string(rb_yield(rb_reg_nth_match(0, match)));
|
||||||
|
if (RSTRING(str)->ptr == buf) {
|
||||||
|
rb_raise(rb_eRuntimeError, "gsub reentered");
|
||||||
|
}
|
||||||
rb_backref_set(match);
|
rb_backref_set(match);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user