summaryrefslogtreecommitdiff
path: root/re.c
diff options
context:
space:
mode:
Diffstat (limited to 're.c')
-rw-r--r--re.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/re.c b/re.c
index 6cada9a714..5553d28dba 100644
--- a/re.c
+++ b/re.c
@@ -927,6 +927,7 @@ rb_reg_search(re, str, pos, reverse)
}
if (result < 0) {
+ re_free_registers(&regs);
rb_backref_set(Qnil);
return result;
}
@@ -943,6 +944,7 @@ rb_reg_search(re, str, pos, reverse)
}
re_copy_registers(RMATCH(match)->regs, &regs);
+ re_free_registers(&regs);
RMATCH(match)->str = rb_str_new4(str);
rb_backref_set(match);