Use-after-frees

Hi folks!

I tried clang-static-analyzer on irssi 1.1.1, it seems like it
finds some things. Here's a diff, but there might be more that you would
want to check, or choose to work differently.

(in special-vars.c, ret is commands->data sometime)

I hope it's not too much trouble if reported as a confidential bug.
Thanks.
This commit is contained in:
coypu@sdf.org 2018-08-11 22:28:14 +00:00 committed by ailin-nemui
commit 610ab2dafa
5 changed files with 8 additions and 5 deletions

View file

@ -64,9 +64,10 @@ static void rawlog_add(RAWLOG_REC *rawlog, char *str)
if (rawlog->nlines < rawlog_lines || rawlog_lines <= 2)
rawlog->nlines++;
else {
g_free(rawlog->lines->data);
gconstpointer tmp = rawlog->lines->data;
rawlog->lines = g_slist_remove(rawlog->lines,
rawlog->lines->data);
g_free(tmp);
}
if (rawlog->logging) {