From 45fab61da316392f6c375498293aa4c990cd75d2 Mon Sep 17 00:00:00 2001 From: Hisham Muhammad Date: Wed, 8 Nov 2006 22:08:00 +0000 Subject: [PATCH] Avoid double free of prototype's comm. --- ProcessList.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/ProcessList.c b/ProcessList.c index b6c65d27..9552aaca 100644 --- a/ProcessList.c +++ b/ProcessList.c @@ -526,7 +526,10 @@ void ProcessList_processEntries(ProcessList* this, char* dirname, int parent, fl assert(process->pid == pid); } else { process = prototype; - process->comm = NULL; + if (process->comm) { + free(process->comm); + process->comm = NULL; + } process->pid = pid; if (! ProcessList_readStatusFile(this, process, dirname, name)) goto errorReadingProcess; @@ -608,9 +611,6 @@ void ProcessList_processEntries(ProcessList* this, char* dirname, int parent, fl errorReadingProcess: { if (existingProcess) ProcessList_remove(this, process); - else { - if (process->comm) - free(process->comm); } } }