From 01ab07ef729a2dbade38906f4acf2827ea327952 Mon Sep 17 00:00:00 2001 From: cinap_lenrek Date: Wed, 3 Feb 2021 01:19:19 +0100 Subject: acme: fix use after free in warning() call (thanks igor) --- sys/src/cmd/acme/wind.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) 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*)); -- cgit v1.2.3