X-Git-Url: http://mj.ucw.cz/gitweb/?a=blobdiff_plain;f=lib%2Fregex.c;h=ce230848facdd0ba7b1709dc311daa23dd66312b;hb=9f87c6fe6552ce8b2236a07307d2f825b0e4c439;hp=dd08c499c25c403cf60a54d9f87a601b556dd845;hpb=1ad95871b0f51dcb6aea3ff9dfbb0b690b3f1a92;p=libucw.git diff --git a/lib/regex.c b/lib/regex.c index dd08c499..ce230848 100644 --- a/lib/regex.c +++ b/lib/regex.c @@ -3,6 +3,9 @@ * * (c) 1997 Martin Mares * (c) 2001 Robert Spalek + * + * This software may be freely distributed and used according to the terms + * of the GNU Lesser General Public License. */ #include "lib/lib.h" @@ -36,7 +39,7 @@ rx_compile(byte *p, int icase) r->buf.translate = xmalloc (CHAR_SET_SIZE); /* Map uppercase characters to corresponding lowercase ones. */ for (i = 0; i < CHAR_SET_SIZE; i++) - r->buf.translate[i] = Clower(i) ? Cupcase(i) : i; + r->buf.translate[i] = Cupcase(i); } else r->buf.translate = NULL; @@ -51,6 +54,8 @@ void rx_free(regex *r) { xfree(r->buf.buffer); + if (r->buf.translate) + xfree(r->buf.translate); xfree(r); }