diff options
author | cinap_lenrek <cinap_lenrek@felloff.net> | 2021-02-03 01:19:19 +0100 |
---|---|---|
committer | cinap_lenrek <cinap_lenrek@felloff.net> | 2021-02-03 01:19:19 +0100 |
commit | 01ab07ef729a2dbade38906f4acf2827ea327952 (patch) | |
tree | 8501b3cf60ee7953d3ad8865686167f23b9db04a | |
parent | 3c1022a3deee758ab1cac307a1b0b46e4a5d0d52 (diff) | |
download | plan9front-01ab07ef729a2dbade38906f4acf2827ea327952.tar.xz |
acme: fix use after free in warning() call (thanks igor)
-rw-r--r-- | sys/src/cmd/acme/wind.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/src/cmd/acme/wind.c b/sys/src/cmd/acme/wind.c index fc7652234..c49ce27f8 100644 --- a/sys/src/cmd/acme/wind.c +++ b/sys/src/cmd/acme/wind.c @@ -610,13 +610,14 @@ winaddincl(Window *w, Rune *r, int n) r = runerealloc(r, n+1); r[n] = 0; } - free(a); if((d->qid.type&QTDIR) == 0){ free(d); warning(nil, "%s: not a directory\n", a); free(r); + free(a); return; } + free(a); free(d); w->nincl++; w->incl = realloc(w->incl, w->nincl*sizeof(Rune*)); |