From 715c2de68f06da7372d7a8d85cd8d59eb56e0ac9 Mon Sep 17 00:00:00 2001 From: matz Date: Mon, 23 Jun 2003 06:52:39 +0000 Subject: * string.c (rb_str_upto): generate sequence according to "succ" order. formerly check was done by dictionary order. [ruby-talk:74138] * string.c (rb_string_value): fill constant empty string along with setting ELTS_SHARED if str->ptr is NULL. [ruby-core:01179] * string.c (rb_string_value_ptr): ditto. * string.c (rb_check_string_type): ditto. * string.c (str_gsub): move END(0) check before mbclen2(). * string.c (scan_once): reduce END(0) check. * io.c (rb_io_initialize): accept fixnum mode. * eval.c (error_print): replace strchr() by memchr(), einfo may contain "\0". * pack.c (pack_unpack): range check for "@" move; initialize check for "m". * error.c (syserr_initialize): avoid buffer overflow. * file.c (rb_file_s_readlink): expand buffer until readlink succeed. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@3982 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- eval.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'eval.c') diff --git a/eval.c b/eval.c index 6f95f0fc9..4186b2e9e 100644 --- a/eval.c +++ b/eval.c @@ -1094,7 +1094,7 @@ error_print() long len = elen; if (RSTRING(epath)->ptr[0] == '#') epath = 0; - if (tail = strchr(einfo, '\n')) { + if (tail = memchr(einfo, '\n', elen)) { len = tail - einfo; tail++; /* skip newline */ } @@ -3357,11 +3357,11 @@ rb_eval(self, n) switch (nd_type(node)) { case NODE_DREGX: result = rb_reg_new(RSTRING(str)->ptr, RSTRING(str)->len, - node->nd_cflag); + node->nd_cflag); break; case NODE_DREGX_ONCE: /* regexp expand once */ result = rb_reg_new(RSTRING(str)->ptr, RSTRING(str)->len, - node->nd_cflag); + node->nd_cflag); nd_set_type(node, NODE_LIT); node->nd_lit = result; break; @@ -4673,7 +4673,7 @@ rb_f_missing(argc, argv, obj) *ruby_frame = *_frame.prev->prev; { char buf[BUFSIZ]; - int noclass = (!d || desc[0]=='#'); + int noclass = (!desc || desc[0]=='#'); int n = 0; VALUE args[3]; -- cgit