Changeset 35 for trunk/src/kmk/var.c
- Timestamp:
- Mar 18, 2003, 4:58:49 AM (22 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/kmk/var.c
r30 r35 412 412 { 413 413 Var *v = (Var *) vp; 414 free(v->name);414 efree(v->name); 415 415 Buf_Destroy(v->val, TRUE); 416 free((Address) v);416 efree((Address) v); 417 417 } 418 418 … … 505 505 if (ctxt == VAR_CMD) { 506 506 #ifdef USE_KLIB 507 kEnvSet(name, val );507 kEnvSet(name, val, TRUE); 508 508 #else 509 509 setenv(name, val, 1); … … 593 593 return(FALSE); 594 594 } else if (v->flags & VAR_FROM_ENV) { 595 free(v->name);595 efree(v->name); 596 596 Buf_Destroy(v->val, TRUE); 597 free((char *)v);597 efree((char *)v); 598 598 } 599 599 return(TRUE); … … 626 626 if (v->flags & VAR_FROM_ENV) { 627 627 Buf_Destroy(v->val, FALSE); 628 free((Address) v);628 efree((Address) v); 629 629 *frp = p; 630 630 } … … 1168 1168 regerror(err, pat, errbuf, errlen); 1169 1169 Error("%s: %s", str, errbuf); 1170 free(errbuf);1170 efree(errbuf); 1171 1171 } 1172 1172 … … 1422 1422 Buf_AddBytes(buf, strlen(cp2), (Byte *) cp2); 1423 1423 if (freeIt) 1424 free(cp2);1424 efree(cp2); 1425 1425 cp += len - 1; 1426 1426 } else { … … 1535 1535 Boolean err; /* TRUE if undefined variables are an error */ 1536 1536 int *lengthPtr; /* OUT: The length of the specification */ 1537 Boolean *freePtr; /* OUT: TRUE if caller should free result */1537 Boolean *freePtr; /* OUT: TRUE if caller should efree result */ 1538 1538 { 1539 1539 register char *tstr; /* Pointer into str */ … … 1630 1630 Buf_AddBytes(buf, strlen(rval), (Byte *) rval); 1631 1631 if (rfree) 1632 free(rval);1632 efree(rval); 1633 1633 } 1634 1634 tstr += rlen - 1; … … 1708 1708 /* 1709 1709 * Resulting string is dynamically allocated, so 1710 * tell caller to free it.1710 * tell caller to efree it. 1711 1711 */ 1712 1712 *freePtr = TRUE; … … 1936 1936 } 1937 1937 if (copy) { 1938 free(pattern);1938 efree(pattern); 1939 1939 } 1940 1940 break; … … 1990 1990 Buf_AddBytes(buf, strlen(cp2), (Byte *)cp2); 1991 1991 if (freeIt) { 1992 free(cp2);1992 efree(cp2); 1993 1993 } 1994 1994 cp += len - 1; … … 2014 2014 *lengthPtr = cp - start + 1; 2015 2015 if (*freePtr) { 2016 free(str);2016 efree(str); 2017 2017 } 2018 2018 Buf_Destroy(buf, TRUE); … … 2061 2061 cp += len - 1; 2062 2062 if (freeIt) { 2063 free(cp2);2063 efree(cp2); 2064 2064 } 2065 2065 } else if (*cp == '&') { … … 2079 2079 *lengthPtr = cp - start + 1; 2080 2080 if (*freePtr) { 2081 free(str);2081 efree(str); 2082 2082 } 2083 2083 Buf_Destroy(buf, TRUE); … … 2108 2108 * Free the two strings. 2109 2109 */ 2110 free(pattern.lhs);2111 free(pattern.rhs);2110 efree(pattern.lhs); 2111 efree(pattern.rhs); 2112 2112 break; 2113 2113 } … … 2129 2129 *lengthPtr = cp - start + 1; 2130 2130 if (*freePtr) 2131 free(str);2131 efree(str); 2132 2132 if (delim != '\0') 2133 2133 Error("Unclosed substitution for %s (%c missing)", … … 2138 2138 if ((pattern.replace = VarGetPattern(ctxt, err, &cp, 2139 2139 delim, NULL, NULL, NULL)) == NULL){ 2140 free(re);2140 efree(re); 2141 2141 2142 2142 /* was: goto cleanup */ 2143 2143 *lengthPtr = cp - start + 1; 2144 2144 if (*freePtr) 2145 free(str);2145 efree(str); 2146 2146 if (delim != '\0') 2147 2147 Error("Unclosed substitution for %s (%c missing)", … … 2165 2165 2166 2166 error = regcomp(&pattern.re, re, REG_EXTENDED); 2167 free(re);2167 efree(re); 2168 2168 if (error) { 2169 2169 *lengthPtr = cp - start + 1; 2170 2170 VarREError(error, &pattern.re, "RE substitution error"); 2171 free(pattern.replace);2171 efree(pattern.replace); 2172 2172 return (var_Error); 2173 2173 } … … 2183 2183 (ClientData) &pattern); 2184 2184 regfree(&pattern.re); 2185 free(pattern.replace);2186 free(pattern.matches);2185 efree(pattern.replace); 2186 efree(pattern.matches); 2187 2187 break; 2188 2188 } … … 2327 2327 2328 2328 if (*freePtr) { 2329 free (str);2329 efree (str); 2330 2330 } 2331 2331 str = newStr; … … 2357 2357 } else { 2358 2358 /* 2359 * Returning the value unmodified, so tell the caller to free2359 * Returning the value unmodified, so tell the caller to efree 2360 2360 * the thing. 2361 2361 */ … … 2363 2363 } 2364 2364 Buf_Destroy(v->val, destroy); 2365 free((Address)v);2365 efree((Address)v); 2366 2366 } else if (v->flags & VAR_JUNK) { 2367 2367 /* 2368 * Perform any free'ing needed and set *freePtr to FALSE so the caller2369 * doesn't try to free a static pointer.2368 * Perform any efree'ing needed and set *freePtr to FALSE so the caller 2369 * doesn't try to efree a static pointer. 2370 2370 */ 2371 2371 if (*freePtr) { 2372 free(str);2372 efree(str); 2373 2373 } 2374 2374 *freePtr = FALSE; 2375 2375 Buf_Destroy(v->val, TRUE); 2376 free((Address)v);2376 efree((Address)v); 2377 2377 if (dynamic) { 2378 2378 str = emalloc(*lengthPtr + 1); … … 2541 2541 Buf_AddBytes (buf, strlen (val), (Byte *)val); 2542 2542 if (doFree) { 2543 free ((Address)val);2543 efree ((Address)val); 2544 2544 } 2545 2545 }
Note:
See TracChangeset
for help on using the changeset viewer.