diff options
-rw-r--r-- | re.c | 9 | ||||
-rw-r--r-- | test/ruby/test_regexp.rb | 12 |
2 files changed, 17 insertions, 4 deletions
@@ -565,8 +565,6 @@ rb_reg_str_with_term(VALUE re, int term) { int options, opt; const int embeddable = ONIG_OPTION_MULTILINE|ONIG_OPTION_IGNORECASE|ONIG_OPTION_EXTEND; - long len; - const UChar* ptr; VALUE str = rb_str_buf_new2("(?"); char optbuf[OPTBUF_SIZE + 1]; /* for '-' */ rb_encoding *enc = rb_enc_get(re); @@ -575,8 +573,9 @@ rb_reg_str_with_term(VALUE re, int term) rb_enc_copy(str, re); options = RREGEXP_PTR(re)->options; - ptr = (UChar*)RREGEXP_SRC_PTR(re); - len = RREGEXP_SRC_LEN(re); again: if (len >= 4 && ptr[0] == '(' && ptr[1] == '?') { int err = 1; @@ -666,6 +665,8 @@ rb_reg_str_with_term(VALUE re, int term) } rb_enc_copy(str, re); return str; } @@ -72,6 +72,18 @@ class TestRegexp < Test::Unit::TestCase end end def test_to_s_extended_subexp re = /#\g#{"\n"}/x re = /#{re}/ |