Ricardo Mestre wrote: > Hi, > > On csh(1), since Free() just calls free() and xfree() is a #define to > Free() then free() can be called directly instead of xfree() and the > #define can be removed, is this approach correct?
Seems like this patch is mangled, unless it's something on my machine. This change looks good to me, though. > Index: alloc.c > =================================================================== > RCS file: /cvs/src/bin/csh/alloc.c,v > retrieving revision 1.16 > diff -u -p -u -r1.16 alloc.c > --- alloc.c 8 Feb 2015 06:01:25 -0000 1.16 > +++ alloc.c 12 Nov 2015 14:19:24 -0000 > @@ -74,9 +74,3 @@ Calloc(size_t s, size_t n) > return (ptr); > } > - > -void > -Free(void *p) > -{ > - free(p); > -} > Index: csh.c > =================================================================== > RCS file: /cvs/src/bin/csh/csh.c,v > retrieving revision 1.36 > diff -u -p -u -r1.36 csh.c > --- csh.c 11 Nov 2015 02:52:46 -0000 1.36 > +++ csh.c 12 Nov 2015 14:19:31 -0000 > @@ -609,7 +609,7 @@ srccat(Char *cp, Char *dp) > Char *ep = Strspl(cp, dp); > char *ptr = short2str(ep); > - xfree(ep); > + free(ep); > return srcfile(ptr, mflag ? 0 : 1, 0); > } > @@ -716,10 +716,10 @@ srcunit(int unit, bool onlyown, bool hfl > int i; > /* We made it to the new state... free up its storage */ > - /* This code could get run twice but xfree doesn't care */ > + /* This code could get run twice but free doesn't care */ > for (i = 0; i < fblocks; i++) > - xfree(fbuf[i]); > - xfree(fbuf); > + free(fbuf[i]); > + free(fbuf); > /* Reset input arena */ > memcpy(&B, &saveB, sizeof(B)); > @@ -1014,7 +1014,7 @@ process(bool catch) > (void) fflush(cshout); > } > if (seterr) { > - xfree(seterr); > + free(seterr); > seterr = NULL; > } > @@ -1094,7 +1094,7 @@ dosource(Char **v, struct command *t) > (void) Strlcpy(buf, *v, sizeof buf/sizeof(Char)); > f = globone(buf, G_ERROR); > (void) strlcpy(sbuf, short2str(f), sizeof sbuf); > - xfree(f); > + free(f); > if (!srcfile(sbuf, 0, hflg) && !hflg) > stderror(ERR_SYSTEM, sbuf, strerror(errno)); > } > Index: csh.h > =================================================================== > RCS file: /cvs/src/bin/csh/csh.h,v > retrieving revision 1.27 > diff -u -p -u -r1.27 csh.h > --- csh.h 28 Oct 2015 22:18:53 -0000 1.27 > +++ csh.h 12 Nov 2015 14:19:32 -0000 > @@ -72,7 +72,6 @@ typedef void *ioctl_t; /* Third arg of > #define xmalloc(i) Malloc(i) > #define xreallocarray(p, i, j) Reallocarray(p, i, j) > #define xcalloc(n, s) Calloc(n, s) > -#define xfree(p) Free(p) > #include <stdio.h> > FILE *cshin, *cshout, *csherr; > Index: dir.c > =================================================================== > RCS file: /cvs/src/bin/csh/dir.c,v > retrieving revision 1.20 > diff -u -p -u -r1.20 dir.c > --- dir.c 8 Feb 2015 06:09:50 -0000 1.20 > +++ dir.c 12 Nov 2015 14:19:34 -0000 > @@ -299,7 +299,7 @@ dnormalize(Char *cp) > cwd[dotdot = Strlen(cwd)] = '/'; > cwd[dotdot + 1] = '\0'; > dp = Strspl(cwd, cp); > - xfree(cwd); > + free(cwd); > return dp; > } > else { > @@ -386,7 +386,7 @@ dgoto(Char *cp) > p--; /* don't add a / after root */ > for (q = cp; (*p++ = *q++) != '\0';) > continue; > - xfree(cp); > + free(cp); > cp = dp; > dp += cwdlen; > } > @@ -414,11 +414,11 @@ dfollow(Char *cp) > */ > dp = dnormalize(cp); > if (chdir(short2str(dp)) >= 0) { > - xfree(cp); > + free(cp); > return dgoto(dp); > } > else { > - xfree(dp); > + free(dp); > if (chdir(short2str(cp)) >= 0) > return dgoto(cp); > serrno = errno; > @@ -438,7 +438,7 @@ dfollow(Char *cp) > continue; > if (chdir(short2str(buf)) >= 0) { > printd = 1; > - xfree(cp); > + free(cp); > cp = Strsave(buf); > return dgoto(cp); > } > @@ -446,13 +446,13 @@ dfollow(Char *cp) > } > dp = value(cp); > if ((dp[0] == '/' || dp[0] == '.') && chdir(short2str(dp)) >= 0) { > - xfree(cp); > + free(cp); > cp = Strsave(dp); > printd = 1; > return dgoto(cp); > } > (void) strlcpy(ebuf, short2str(cp), sizeof ebuf); > - xfree(cp); > + free(cp); > stderror(ERR_SYSTEM, ebuf, strerror(serrno)); > return (NULL); > } > @@ -593,8 +593,8 @@ dfree(struct directory *dp) > dp->di_next = dp->di_prev = 0; > } > else { > - xfree((char *) dp->di_name); > - xfree(dp); > + free((char *) dp->di_name); > + free(dp); > } > } > @@ -630,7 +630,7 @@ dcanon(Char *cp, Char *p) > (void) Strlcpy(tmpdir, p1, sizeof tmpdir/sizeof(Char)); > (void) Strlcat(tmpdir, STRslash, sizeof tmpdir/sizeof(Char)); > (void) Strlcat(tmpdir, cp, sizeof tmpdir/sizeof(Char)); > - xfree(cp); > + free(cp); > cp = p = Strsave(tmpdir); > } > @@ -735,7 +735,7 @@ dcanon(Char *cp, Char *p) > */ > p = newcp; > } > - xfree(cp); > + free(cp); > cp = newcp; > continue; /* canonicalize the link */ > } > @@ -824,7 +824,7 @@ dcanon(Char *cp, Char *p) > */ > p = newcp; > } > - xfree(cp); > + free(cp); > cp = newcp; > continue; /* canonicalize the link */ > } > @@ -879,7 +879,7 @@ dcanon(Char *cp, Char *p) > * Use STRhome to make '~' work > */ > newcp = Strspl(p1, cp + Strlen(p2)); > - xfree(cp); > + free(cp); > cp = newcp; > } > } > Index: dol.c > =================================================================== > RCS file: /cvs/src/bin/csh/dol.c,v > retrieving revision 1.19 > diff -u -p -u -r1.19 dol.c > --- dol.c 8 Feb 2015 05:51:37 -0000 1.19 > +++ dol.c 12 Nov 2015 14:19:37 -0000 > @@ -409,7 +409,7 @@ Dgetdol(void) > stderror(ERR_SYNTAX); > if (backpid != 0) { > if (dolbang) > - xfree(dolbang); > + free(dolbang); > setDolp(dolbang = putn(backpid)); > } > goto eatbrac; > @@ -595,7 +595,7 @@ Dgetdol(void) > Char *cp = putn(upb - lwb + 1); > addla(cp); > - xfree(cp); > + free(cp); > } > else { > eatmod: > @@ -718,7 +718,7 @@ setDolp(Char *cp) > (void) Strlcat(np, rhsub, len); > (void) Strlcat(np, dp + lhlen, len); > - xfree(cp); > + free(cp); > dp = cp = np; > didmod = 1; > } else { > @@ -742,12 +742,12 @@ setDolp(Char *cp) > if ((dp = domod(cp, dolmod[i]))) { > didmod = 1; > if (Strcmp(cp, dp) == 0) { > - xfree(cp); > + free(cp); > cp = dp; > break; > } > else { > - xfree(cp); > + free(cp); > cp = dp; > } > } > @@ -765,7 +765,7 @@ setDolp(Char *cp) > if (dp) { > addla(dp); > - xfree(dp); > + free(dp); > } > else > addla(cp); > Index: error.c > =================================================================== > RCS file: /cvs/src/bin/csh/error.c,v > retrieving revision 1.11 > diff -u -p -u -r1.11 error.c > --- error.c 8 Feb 2015 05:51:37 -0000 1.11 > +++ error.c 12 Nov 2015 14:19:38 -0000 > @@ -347,7 +347,7 @@ stderror(int id, ...) > } > if (seterr) { > - xfree(seterr); > + free(seterr); > seterr = NULL; > } > Index: exec.c > =================================================================== > RCS file: /cvs/src/bin/csh/exec.c,v > retrieving revision 1.18 > diff -u -p -u -r1.18 exec.c > --- exec.c 28 Oct 2015 22:18:53 -0000 1.18 > +++ exec.c 12 Nov 2015 14:19:40 -0000 > @@ -159,8 +159,8 @@ doexec(Char **v, struct command *t) > blkfree(t->t_dcom); > t->t_dcom = blkspl(pv, av); > - xfree(pv); > - xfree(av); > + free(pv); > + free(av); > av = t->t_dcom; > trim(av); > @@ -216,7 +216,7 @@ doexec(Char **v, struct command *t) > Vdp = dp; > texec(dp, av); > Vdp = 0; > - xfree(dp); > + free(dp); > } > misses++; > cont: > @@ -225,7 +225,7 @@ cont: > } while (*pv); > hits--; > Vsav = 0; > - xfree(sav); > + free(sav); > pexerr(); > } > @@ -236,7 +236,7 @@ pexerr(void) > if (expath) { > setname(vis_str(expath)); > Vexpath = 0; > - xfree(expath); > + free(expath); > expath = 0; > } > else > @@ -316,7 +316,7 @@ texec(Char *sf, Char **st) > /* The order for the conversions is significant */ > t = short2blk(st); > f = short2str(sf); > - xfree(st); > + free(st); > Vt = t; > (void) execve(f, t, environ); > Vt = 0; > @@ -333,7 +333,7 @@ texec(Char *sf, Char **st) > if (exerr == 0) { > exerr = strerror(errno); > if (expath) > - xfree(expath); > + free(expath); > expath = Strsave(sf); > Vexpath = expath; > } > @@ -512,13 +512,13 @@ iscommand(Char *name) > } > if (pv[0][0] == 0 || eq(pv[0], STRdot)) { /* don't make ./xxx */ > if (executable(NULL, name, 0)) { > - xfree(sav); > + free(sav); > return i + 1; > } > } > else { > if (executable(*pv, sav, 0)) { > - xfree(sav); > + free(sav); > return i + 1; > } > } > @@ -526,7 +526,7 @@ cont: > pv++; > i++; > } while (*pv); > - xfree(sav); > + free(sav); > return 0; > } > @@ -694,7 +694,7 @@ tellmewhat(struct wordent *lexp, Char *s > if (!slash) { > sp->word = Strspl(STRdotsl, sp->word); > prlex(cshout, lexp); > - xfree(sp->word); > + free(sp->word); > } > else > prlex(cshout, lexp); > @@ -702,12 +702,12 @@ tellmewhat(struct wordent *lexp, Char *s > else { > s1 = Strspl(*pv, STRslash); > sp->word = Strspl(s1, sp->word); > - xfree(s1); > + free(s1); > if (str == NULL) > prlex(cshout, lexp); > else > (void) Strlcpy(str, sp->word, len/sizeof(Char)); > - xfree(sp->word); > + free(sp->word); > } > found = 1; > } > @@ -723,6 +723,6 @@ tellmewhat(struct wordent *lexp, Char *s > found = 0; > } > sp->word = s0; /* we save and then restore this */ > - xfree(cmd); > + free(cmd); > return found; > } > Index: exp.c > =================================================================== > RCS file: /cvs/src/bin/csh/exp.c,v > retrieving revision 1.15 > diff -u -p -u -r1.15 exp.c > --- exp.c 26 Oct 2015 22:03:06 -0000 1.15 > +++ exp.c 12 Nov 2015 14:19:41 -0000 > @@ -183,12 +183,12 @@ exp2c(Char ***vp, bool ignore) > i = !Gmatch(p1, p2); > break; > } > - xfree(p1); > - xfree(p2); > + free(p1); > + free(p2); > return (i); > } > i = egetn(p1); > - xfree(p1); > + free(p1); > return (i); > } > @@ -223,8 +223,8 @@ exp3(Char ***vp, bool ignore) > i = egetn(p1) <= egetn(p2); > break; > } > - xfree(p1); > - xfree(p2); > + free(p1); > + free(p2); > return (putn(i)); > } > return (p1); > @@ -245,8 +245,8 @@ exp3a(Char ***vp, bool ignore) > i = egetn(p1) << egetn(p2); > else > i = egetn(p1) >> egetn(p2); > - xfree(p1); > - xfree(p2); > + free(p1); > + free(p2); > return (putn(i)); > } > return (p1); > @@ -274,8 +274,8 @@ exp4(Char ***vp, bool ignore) > i = egetn(p1) - egetn(p2); > break; > } > - xfree(p1); > - xfree(p2); > + free(p1); > + free(p2); > return (putn(i)); > } > return (p1); > @@ -321,8 +321,8 @@ exp5(Char ***vp, bool ignore) > i = l % i; > break; > } > - xfree(p1); > - xfree(p2); > + free(p1); > + free(p2); > return (putn(i)); > } > return (p1); > @@ -340,14 +340,14 @@ exp6(Char ***vp, bool ignore) > (*vp)++; > cp = exp6(vp, ignore); > i = egetn(cp); > - xfree(cp); > + free(cp); > return (putn(!i)); > } > if (eq(**vp, STRtilde)) { > (*vp)++; > cp = exp6(vp, ignore); > i = egetn(cp); > - xfree(cp); > + free(cp); > return (putn(~i)); > } > if (eq(**vp, STRLparen)) { > @@ -428,7 +428,7 @@ exp6(Char ***vp, bool ignore) > default: > if (cp[1] == 'l' ? lstat(short2str(ep), &stb) : > stat(short2str(ep), &stb)) { > - xfree(ep); > + free(ep); > return (Strsave(STR0)); > } > switch (cp[1]) { > @@ -466,7 +466,7 @@ exp6(Char ***vp, bool ignore) > break; > } > } > - xfree(ep); > + free(ep); > return (putn(i)); > } > return (ignore & NOGLOB ? Strsave(cp) : globone(cp, G_ERROR)); > Index: extern.h > =================================================================== > RCS file: /cvs/src/bin/csh/extern.h,v > retrieving revision 1.24 > diff -u -p -u -r1.24 extern.h > --- extern.h 26 Oct 2015 21:57:42 -0000 1.24 > +++ extern.h 12 Nov 2015 14:19:43 -0000 > @@ -281,7 +281,6 @@ void psecs(long); > /* > * alloc.c > */ > -void Free(void *); > void * Malloc(size_t); > void * Reallocarray(void *, size_t, size_t); > void * Calloc(size_t, size_t); > Index: file.c > =================================================================== > RCS file: /cvs/src/bin/csh/file.c,v > retrieving revision 1.22 > diff -u -p -u -r1.22 file.c > --- file.c 26 Oct 2015 15:01:15 -0000 1.22 > +++ file.c 12 Nov 2015 14:19:44 -0000 > @@ -390,8 +390,8 @@ free_items(Char **items, int numitems) > int i; > for (i = 0; i < numitems; i++) > - xfree(items[i]); > - xfree(items); > + free(items[i]); > + free(items); > } > #define FREE_ITEMS(items) { \ > Index: func.c > =================================================================== > RCS file: /cvs/src/bin/csh/func.c,v > retrieving revision 1.31 > diff -u -p -u -r1.31 func.c > --- func.c 26 Oct 2015 16:27:04 -0000 1.31 > +++ func.c 12 Nov 2015 14:19:46 -0000 > @@ -127,7 +127,7 @@ doonintr(Char **v, struct command *t) > stderror(ERR_NAME | ERR_TERMINAL); > cp = gointr; > gointr = 0; > - xfree(cp); > + free(cp); > if (vv == 0) { > if (setintr) { > sigemptyset(&sigset); > @@ -300,7 +300,7 @@ dogoto(Char **v, struct command *t) > Char *lp; > gotolab(lp = globone(v[1], G_ERROR)); > - xfree(lp); > + free(lp); > } > void > @@ -341,7 +341,7 @@ doswitch(Char **v, struct command *t) > if (*v) > stderror(ERR_SYNTAX); > search(T_SWITCH, 0, lp = globone(cp, G_ERROR)); > - xfree(lp); > + free(lp); > } > void > @@ -659,7 +659,7 @@ search(int type, int level, Char *goal) > cp = strip(Dfix1(aword)); > if (Gmatch(goal, cp)) > level = -1; > - xfree(cp); > + free(cp); > break; > case T_DEFAULT: > @@ -824,8 +824,8 @@ wfree(void) > if (wp->w_fe0) > blkfree(wp->w_fe0); > if (wp->w_fename) > - xfree(wp->w_fename); > - xfree(wp); > + free(wp->w_fename); > + free(wp); > } > } > @@ -917,7 +917,7 @@ dosetenv(Char **v, struct command *t) > importpath(lp); > dohash(NULL, NULL); > } > - xfree(lp); > + free(lp); > } > void > @@ -929,7 +929,7 @@ dounsetenv(Char **v, struct command *t) > static Char *name = NULL; > if (name) > - xfree(name); > + free(name); > /* > * Find the longest environment variable > */ > @@ -957,7 +957,7 @@ dounsetenv(Char **v, struct command *t) > Unsetenv(name); > break; > } > - xfree(name); > + free(name); > name = NULL; > } > @@ -975,21 +975,21 @@ Setenv(Char *name, Char *val) > if (*cp != 0 || *dp != '=') > continue; > cp = Strspl(STRequal, val); > - xfree(* ep); > + free(* ep); > *ep = strip(Strspl(name, cp)); > - xfree(cp); > + free(cp); > blkfree((Char **) environ); > environ = short2blk(STR_environ); > return; > } > cp = Strspl(name, STRequal); > blk[0] = strip(Strspl(cp, val)); > - xfree(cp); > + free(cp); > blk[1] = 0; > STR_environ = blkspl(STR_environ, blk); > blkfree((Char **) environ); > environ = short2blk(STR_environ); > - xfree(oep); > + free(oep); > } > static void > @@ -1009,8 +1009,8 @@ Unsetenv(Char *name) > STR_environ = blkspl(STR_environ, ep + 1); > environ = short2blk(STR_environ); > *ep = cp; > - xfree(cp); > - xfree(oep); > + free(cp); > + free(oep); > return; > } > } > Index: glob.c > =================================================================== > RCS file: /cvs/src/bin/csh/glob.c,v > retrieving revision 1.20 > diff -u -p -u -r1.20 glob.c > --- glob.c 26 Oct 2015 22:03:06 -0000 1.20 > +++ glob.c 12 Nov 2015 14:19:47 -0000 > @@ -110,7 +110,7 @@ globtilde(Char **nv, Char *s) > *b++ = *s++; > *b = EOS; > --u; > - xfree(u); > + free(u); > return (Strsave(gstart)); > } > @@ -228,13 +228,13 @@ expbrace(Char ***nvp, Char ***elp, int s > int len; > if ((len = globbrace(s, b, &bl)) < 0) { > - xfree(nv); > + free(nv); > stderror(ERR_MISSING, -len); > } > - xfree(s); > + free(s); > if (len == 1) { > *vl-- = *bl; > - xfree(bl); > + free(bl); > continue; > } > len = blklen(bl); > @@ -258,7 +258,7 @@ expbrace(Char ***nvp, Char ***elp, int s > vp++; > for (bp = bl + 1; *bp; *vp++ = *bp++) > continue; > - xfree(bl); > + free(bl); > } > } > @@ -294,7 +294,7 @@ globexpand(Char **v) > vl = &nv[size - GLOBSPACE]; > } > } > - xfree(pargv); > + free(pargv); > pargv = NULL; > } > else { > @@ -345,9 +345,9 @@ handleone(Char *str, Char **vl, int acti > str = Strsave(*vlp++); > do { > cp = Strspl(str, STRspace); > - xfree(str); > + free(str); > str = Strspl(cp, *vlp); > - xfree(cp); > + free(cp); > } > while (*++vlp) > ; > @@ -430,14 +430,14 @@ globone(Char *str, int action) > vo = globexpand(v); > if (noglob || (gflg & G_GLOB) == 0) { > if (vo[0] == NULL) { > - xfree(vo); > + free(vo); > return (Strsave(STRNULL)); > } > if (vo[1] != NULL) > return (handleone(str, vo, action)); > else { > str = strip(vo[0]); > - xfree(vo); > + free(vo); > return (str); > } > } > @@ -455,14 +455,14 @@ globone(Char *str, int action) > stderror(ERR_NAME | ERR_NOMATCH); > } > if (vl[0] == NULL) { > - xfree(vl); > + free(vl); > return (Strsave(STRNULL)); > } > if (vl[1] != NULL) > return (handleone(str, vl, action)); > else { > str = strip(*vl); > - xfree(vl); > + free(vl); > return (str); > } > } > @@ -692,7 +692,7 @@ backeval(Char *cp, bool literal) > execute(t, -1, NULL, NULL); > exitstat(); > } > - xfree(cp); > + free(cp); > (void) close(pvec[1]); > c = 0; > ip = NULL; > Index: hist.c > =================================================================== > RCS file: /cvs/src/bin/csh/hist.c,v > retrieving revision 1.9 > diff -u -p -u -r1.9 hist.c > --- hist.c 8 Feb 2015 05:51:37 -0000 1.9 > +++ hist.c 12 Nov 2015 14:19:49 -0000 > @@ -97,7 +97,7 @@ hfree(struct Hist *hp) > { > freelex(&hp->Hlex); > - xfree(hp); > + free(hp); > } > void > Index: lex.c > =================================================================== > RCS file: /cvs/src/bin/csh/lex.c,v > retrieving revision 1.20 > diff -u -p -u -r1.20 lex.c > --- lex.c 26 Oct 2015 22:03:06 -0000 1.20 > +++ lex.c 12 Nov 2015 14:19:52 -0000 > @@ -211,8 +211,8 @@ freelex(struct wordent *vp) > while (vp->next != vp) { > fp = vp->next; > vp->next = fp->next; > - xfree(fp->word); > - xfree(fp); > + free(fp->word); > + free(fp); > } > vp->prev = vp; > } > @@ -847,11 +847,11 @@ dosub(int sc, struct wordent *en, bool g > otword = tword; > tword = subword(otword, sc, &didone); > if (Strcmp(tword, otword) == 0) { > - xfree(otword); > + free(otword); > break; > } > else > - xfree(otword); > + free(otword); > } > } > } > @@ -1413,7 +1413,7 @@ again: > if (fbuf) { > (void) blkcpy(nfbuf, fbuf); > - xfree(fbuf); > + free(fbuf); > } > fbuf = nfbuf; > fbuf[fblocks] = xcalloc(BUFSIZ, sizeof(Char)); > @@ -1483,7 +1483,7 @@ bfree(void) > sb = (int) (fseekp - 1) / BUFSIZ; > if (sb > 0) { > for (i = 0; i < sb; i++) > - xfree(fbuf[i]); > + free(fbuf[i]); > (void) blkcpy(fbuf, &fbuf[sb]); > fseekp -= BUFSIZ * sb; > feobp -= BUFSIZ * sb; > Index: misc.c > =================================================================== > RCS file: /cvs/src/bin/csh/misc.c,v > retrieving revision 1.17 > diff -u -p -u -r1.17 misc.c > --- misc.c 26 Oct 2015 22:03:06 -0000 1.17 > +++ misc.c 12 Nov 2015 14:19:55 -0000 > @@ -124,8 +124,8 @@ blkfree(Char **av0) > if (!av0) > return; > for (; *av; av++) > - xfree(* av); > - xfree(av0); > + free(* av); > + free(av0); > } > Char ** > @@ -252,7 +252,7 @@ lshift(Char **v, int c) > Char **u; > for (u = v; *u && --c >= 0; u++) > - xfree(*u); > + free(*u); > (void) blkcpy(v, u); > } > Index: parse.c > =================================================================== > RCS file: /cvs/src/bin/csh/parse.c,v > retrieving revision 1.11 > diff -u -p -u -r1.11 parse.c > --- parse.c 8 Feb 2015 06:09:50 -0000 1.11 > +++ parse.c 12 Nov 2015 14:19:57 -0000 > @@ -170,7 +170,7 @@ asyn3(struct wordent *p1, struct wordent > Char *cp = alout.next->word; > alout.next->word = Strspl(STRQNULL, cp); > - xfree(cp); > + free(cp); > } > p1 = freenod(p1, redid ? p2 : p1->next); > if (alout.next != &alout) { > @@ -178,8 +178,8 @@ asyn3(struct wordent *p1, struct wordent > alout.prev->prev->next = p1->next; > alout.next->prev = p1; > p1->next = alout.next; > - xfree(alout.prev->word); > - xfree((alout.prev)); > + free(alout.prev->word); > + free((alout.prev)); > } > reset(); /* throw! */ > } > @@ -190,9 +190,9 @@ freenod(struct wordent *p1, struct worde > struct wordent *retp = p1->prev; > while (p1 != p2) { > - xfree(p1->word); > + free(p1->word); > p1 = p1->next; > - xfree((p1->prev)); > + free((p1->prev)); > } > retp->next = p2; > p2->prev = retp; > @@ -645,15 +645,15 @@ freesyn(struct command *t) > case NODE_COMMAND: > for (v = t->t_dcom; *v; v++) > - xfree(* v); > - xfree((t->t_dcom)); > - xfree(t->t_dlef); > - xfree(t->t_drit); > + free(* v); > + free((t->t_dcom)); > + free(t->t_dlef); > + free(t->t_drit); > break; > case NODE_PAREN: > freesyn(t->t_dspr); > - xfree(t->t_dlef); > - xfree(t->t_drit); > + free(t->t_dlef); > + free(t->t_drit); > break; > case NODE_AND: > @@ -663,5 +663,5 @@ freesyn(struct command *t) > freesyn(t->t_dcar), freesyn(t->t_dcdr); > break; > } > - xfree(t); > + free(t); > } > Index: proc.c > =================================================================== > RCS file: /cvs/src/bin/csh/proc.c,v > retrieving revision 1.29 > diff -u -p -u -r1.29 proc.c > --- proc.c 26 Oct 2015 22:03:06 -0000 1.29 > +++ proc.c 12 Nov 2015 14:20:01 -0000 > @@ -227,11 +227,11 @@ pwait(void) > for (pp = (fp = &proclist)->p_next; pp != NULL; pp = (fp = pp)->p_next) > if (pp->p_pid == 0) { > fp->p_next = pp->p_next; > - xfree(pp->p_command); > + free(pp->p_command); > if (pp->p_cwd && --pp->p_cwd->di_count == 0) > if (pp->p_cwd->di_next == 0) > dfree(pp->p_cwd); > - xfree(pp); > + free(pp); > pp = fp; > } > sigprocmask(SIG_SETMASK, &osigset, NULL); > Index: sem.c > =================================================================== > RCS file: /cvs/src/bin/csh/sem.c,v > retrieving revision 1.20 > diff -u -p -u -r1.20 sem.c > --- sem.c 26 Oct 2015 22:03:06 -0000 1.20 > +++ sem.c 12 Nov 2015 14:20:05 -0000 > @@ -273,11 +273,11 @@ execute(struct command *t, int wanttty, > csigset = ocsigset; > nosigchld = onosigchld; > - xfree(Vsav); > + free(Vsav); > Vsav = NULL; > - xfree(Vdp); > + free(Vdp); > Vdp = NULL; > - xfree(Vexpath); > + free(Vexpath); > Vexpath = NULL; > blkfree((Char **) Vt); > Vt = NULL; > @@ -483,23 +483,23 @@ splicepipe(struct command *t, Char *cp) > pv = globall(blk); > if (pv == NULL) { > setname(vis_str(blk[0])); > - xfree(blk[0]); > + free(blk[0]); > stderror(ERR_NAME | ERR_NOMATCH); > } > gargv = NULL; > if (pv[1] != NULL) { /* we need to fix the command vector */ > Char **av = blkspl(t->t_dcom, &pv[1]); > - xfree(t->t_dcom); > + free(t->t_dcom); > t->t_dcom = av; > } > - xfree(blk[0]); > + free(blk[0]); > blk[0] = pv[0]; > - xfree(pv); > + free(pv); > } > } > else { > blk[0] = globone(blk[1] = Dfix1(cp), G_ERROR); > - xfree(blk[1]); > + free(blk[1]); > } > return(blk[0]); > } > @@ -529,7 +529,7 @@ doio(struct command *t, int *pipein, int > (void) dcopy(SHERR, 2); > cp = splicepipe(t, t->t_dlef); > strlcpy(tmp, short2str(cp), sizeof tmp); > - xfree(cp); > + free(cp); > if ((fd = open(tmp, O_RDONLY)) < 0) > stderror(ERR_SYSTEM, tmp, strerror(errno)); > (void) dmove(fd, 0); > @@ -555,7 +555,7 @@ doio(struct command *t, int *pipein, int > cp = splicepipe(t, t->t_drit); > strlcpy(tmp, short2str(cp), sizeof tmp); > - xfree(cp); > + free(cp); > /* > * so > /dev/std{out,err} work > */ > Index: set.c > =================================================================== > RCS file: /cvs/src/bin/csh/set.c,v > retrieving revision 1.18 > diff -u -p -u -r1.18 set.c > --- set.c 26 Oct 2015 22:03:06 -0000 1.18 > +++ set.c 12 Nov 2015 14:20:08 -0000 > @@ -156,7 +156,7 @@ doset(Char **v, struct command *t) > Setenv(STRHOME, cp); > /* fix directory stack for new tilde home */ > dtilde(); > - xfree(cp); > + free(cp); > } > else if (eq(vp, STRfilec)) > filec = 1; > @@ -181,7 +181,7 @@ asx(Char *vp, int subscr, Char *p) > { > struct varent *v = getvx(vp, subscr); > - xfree(v->vec[subscr - 1]); > + free(v->vec[subscr - 1]); > v->vec[subscr - 1] = globone(p, G_APPEND); > } > @@ -276,9 +276,9 @@ dolet(Char **v, struct command *t) > exportpath(adrof(STRpath)->vec); > dohash(NULL, NULL); > } > - xfree(vp); > + free(vp); > if (c != '=') > - xfree(p); > + free(p); > } while ((p = *v++) != NULL); > } > @@ -290,7 +290,7 @@ xset(Char *cp, Char ***vp) > if (*cp) { > dp = Strsave(cp); > --(*vp); > - xfree(** vp); > + free(** vp); > **vp = dp; > } > return (putn(expr(vp))); > @@ -505,7 +505,7 @@ unsetv1(struct varent *p) > * Free associated memory first to avoid complications. > */ > blkfree(p->vec); > - xfree(p->v_name); > + free(p->v_name); > /* > * If p is missing one child, then we can move the other into where p is. > * Otherwise, we find the predecessor of p, which is guaranteed to have > no > @@ -533,7 +533,7 @@ unsetv1(struct varent *p) > /* > * Free the deleted node, and rebalance. > */ > - xfree(p); > + free(p); > balance(pp, f, 1); > } > > Best regards, > Ricardo Mestre