From 165c82c394ef4166617d21413e73090aede99973 Mon Sep 17 00:00:00 2001 From: Thomas Schmitt Date: Thu, 5 May 2011 08:14:09 +0000 Subject: [PATCH] Replaced some large local variables by other means in xorriso/misc_funct.c --- xorriso/misc_funct.c | 18 +++++++++++++----- xorriso/xorriso_timestamp.h | 2 +- 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/xorriso/misc_funct.c b/xorriso/misc_funct.c index a345cf0f..998e6b46 100644 --- a/xorriso/misc_funct.c +++ b/xorriso/misc_funct.c @@ -980,23 +980,31 @@ int Sregex_resolve_var(char *form, char *vars[][2], int num_vars, int Sregex_match(char *pattern, char *text, int flag) { int ret; - char re_text[2*SfileadrL]; + char *re_text= NULL; regex_t re; regmatch_t match[1]; + re_text= TSOB_FELD(char, 2 * SfileadrL); + if(re_text == NULL) + {ret= -1; goto ex;} + Xorriso__bourne_to_reg(pattern, re_text, 0); ret= regcomp(&re, re_text, 0); if(ret != 0) - return(-1); + {ret= -1; goto ex;} if(flag & 1) { regfree(&re); - return(1); + {ret= 1; goto ex;} } ret= regexec(&re, text, 1, match, 0); regfree(&re); if(ret != 0) - return(0); - return(1); + goto ex; + ret= 1; +ex:; + if(re_text != NULL) + free(re_text); + return(ret); } diff --git a/xorriso/xorriso_timestamp.h b/xorriso/xorriso_timestamp.h index 1984ea02..ccc3c85f 100644 --- a/xorriso/xorriso_timestamp.h +++ b/xorriso/xorriso_timestamp.h @@ -1 +1 @@ -#define Xorriso_timestamP "2011.05.05.075233" +#define Xorriso_timestamP "2011.05.05.081436"