summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeremie Koenig <jk@jk.fr.eu.org>2010-08-25 05:46:49 +0000
committerJeremie Koenig <jk@jk.fr.eu.org>2010-08-30 14:31:32 +0200
commitca8277c6f507e54a043b84a8df9c55ac39a83c6e (patch)
tree80d8baba3d752d6f58ccaff9872d5a07994887e9
parentb3d304167929bc199e6789fd67ffea035e7fdbf1 (diff)
Fix leak in error case
* process.c (process_lookup_pid): Fix leak in error case.
-rw-r--r--process.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/process.c b/process.c
index 68e7bc1..47e3470 100644
--- a/process.c
+++ b/process.c
@@ -345,7 +345,10 @@ process_lookup_pid (struct ps_context *pc, pid_t pid, struct node **np)
err = proc_stat_set_flags (ps, PSTAT_OWNER_UID);
if (err || ! (proc_stat_flags (ps) & PSTAT_OWNER_UID))
- return EIO;
+ {
+ _proc_stat_free (ps);
+ return EIO;
+ }
/* FIXME: have a separate proc_desc structure for each file, so this can be
accessed in a more robust and straightforward way. */