From 5a619e1986724cf8e27b637509925a8da36837e8 Mon Sep 17 00:00:00 2001 From: "Arnold D. Robbins" Date: Thu, 19 Jan 2017 21:08:19 +0200 Subject: Speed up programs that toggle IGNORECASE a lot. --- awkgram.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'awkgram.c') diff --git a/awkgram.c b/awkgram.c index b80caa11..c6f47dbd 100644 --- a/awkgram.c +++ b/awkgram.c @@ -7422,8 +7422,14 @@ make_regnode(int type, NODE *exp) n->re_cnt = 1; if (type == Node_regex) { - n->re_reg = make_regexp(exp->stptr, exp->stlen, false, true, false); - if (n->re_reg == NULL) { + n->re_reg[0] = make_regexp(exp->stptr, exp->stlen, false, true, false); + if (n->re_reg[0] == NULL) { + freenode(n); + return NULL; + } + n->re_reg[1] = make_regexp(exp->stptr, exp->stlen, true, true, false); + if (n->re_reg[1] == NULL) { + refree(n->re_reg[0]); freenode(n); return NULL; } -- cgit v1.2.3