--- libaitio/src/aitio.c 2012/05/14 12:49:21 1.10 +++ libaitio/src/aitio.c 2012/05/23 11:59:51 1.10.6.2 @@ -3,7 +3,7 @@ * by Michael Pounov * * $Author: misho $ -* $Id: aitio.c,v 1.10 2012/05/14 12:49:21 misho Exp $ +* $Id: aitio.c,v 1.10.6.2 2012/05/23 11:59:51 misho Exp $ * ************************************************************************** The ELWIX and AITNET software is distributed under the following @@ -51,6 +51,8 @@ int io_Debug; #pragma GCC visibility push(hidden) +int io_mpool; + int io_Errno; char io_Error[STRSIZ]; @@ -84,7 +86,14 @@ io_SetErr(int eno, char *estr, ...) va_end(lst); } +// mpool_inuse() Check for mpool usage +inline int +mpool_inuse() +{ + return io_mpool; +} + /* * ioPromptRead() - Read data from input h[0] with prompt to output h[1] * @@ -312,7 +321,7 @@ ioRegexGet(const char *csRegex, const char *csData, ch * @csRegex = Regulare expression pattern * @csData = Source data * @csNew = Data for replace - * return: NULL not match or error; !=NULL allocated new string, must be free after use! + * return: NULL not match or error; !=NULL allocated new string, must be xfree after use! */ char * ioRegexReplace(const char *csRegex, const char *csData, const char *csNew) @@ -328,7 +337,7 @@ ioRegexReplace(const char *csRegex, const char *csData // ___ before match len = sp + 1; - str = malloc(len); + str = xmalloc(len); if (!str) { LOGERR; return NULL; @@ -337,7 +346,7 @@ ioRegexReplace(const char *csRegex, const char *csData // * replace match * if (csNew) { len += strlen(csNew); - str = realloc(str, len); + str = xrealloc(str, len); if (!str) { LOGERR; return NULL; @@ -346,7 +355,7 @@ ioRegexReplace(const char *csRegex, const char *csData } // after match ___ len += strlen(csData) - ep; - str = realloc(str, len); + str = xrealloc(str, len); if (!str) { LOGERR; return NULL; @@ -360,7 +369,7 @@ ioRegexReplace(const char *csRegex, const char *csData * ioStrAst() - Function for evaluate string like asterisk variable "{text[:[-]#[:#]]}" * * @csString = Input string - * return: NULL error, !=NULL Allocated new string evaluated from input string, must be free() + * return: NULL error, !=NULL Allocated new string evaluated from input string, must be xfree() */ char * ioStrAst(const char *csString) @@ -401,7 +410,7 @@ ioStrAst(const char *csString) ext = str; out = strdup(ext); - free(str); + xfree(str); return out; } @@ -451,7 +460,7 @@ ioMkDir(const char *csDir, int mode) } end: chdir(szOld); - free(str); + xfree(str); return cx; }