From 2f14bde88fc25fd49c5d72bac71e1f0381df944a Mon Sep 17 00:00:00 2001 From: nobu Date: Fri, 28 Mar 2014 02:28:16 +0000 Subject: string.c: backref substitution * re.c (rb_reg_regsub): allow nil regexp for string matching. * string.c (rb_str_sub_bang, str_gsub): make substitution if replacement string has backref escapes. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45459 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- re.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 're.c') diff --git a/re.c b/re.c index 5927e9e9f3..70194be87e 100644 --- a/re.c +++ b/re.c @@ -3402,7 +3402,7 @@ rb_reg_regsub(VALUE str, VALUE src, struct re_registers *regs, VALUE regexp) switch (c) { case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': - if (onig_noname_group_capture_is_active(RREGEXP(regexp)->ptr)) { + if (!NIL_P(regexp) && onig_noname_group_capture_is_active(RREGEXP(regexp)->ptr)) { no = c - '0'; } else { -- cgit v1.2.3