From 32378c5abea38a8278dae28eae9abcd547ac8a95 Mon Sep 17 00:00:00 2001 From: knu Date: Sun, 18 May 2008 14:48:15 +0000 Subject: Merge r16206 and r16239 from ruby_1_8. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_7@16457 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- re.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 're.c') diff --git a/re.c b/re.c index 1a7f9a8c19..c1b1c7e34a 100644 --- a/re.c +++ b/re.c @@ -78,7 +78,7 @@ rb_memcicmp(x, y, len) int tmp; while (len--) { - if (tmp = casetable[(unsigned)*p1++] - casetable[(unsigned)*p2++]) + if ((tmp = casetable[(unsigned)*p1++] - casetable[(unsigned)*p2++]) != 0) return tmp; } return 0; @@ -892,7 +892,7 @@ rb_reg_search(re, str, pos, reverse) { long result; VALUE match; - static struct re_registers regs; + struct re_registers regs; long range; if (pos > RSTRING(str)->len || pos < 0) { @@ -914,6 +914,7 @@ rb_reg_search(re, str, pos, reverse) else { range = RSTRING(str)->len - pos; } + MEMZERO(®s, struct re_registers, 1); result = re_search(RREGEXP(re)->ptr,RSTRING(str)->ptr,RSTRING(str)->len, pos, range, ®s); -- cgit v1.2.3