summaryrefslogtreecommitdiff
blob: ffcf2e932f08197cd5c728d48db54190bbe4981d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# HG changeset 145 patch
# User kfraser@localhost.localdomain
# Date 1185293349 -3600
# Node ID 3b0bce92b2f254242c785d2662776e04a0817301
# Parent  d88e59a7334ae584900a9f7221d494bcd9ef2a63
Subject: xenbus: Fix obvious use-after-free spotted by Coverity checker.
Signed-off-by: Adrian Bunk <bunk@stusta.de>

Acked-by: jbeulich@novell.com

Index: head-2007-08-07/drivers/xen/xenbus/xenbus_xs.c
===================================================================
--- head-2007-08-07.orig/drivers/xen/xenbus/xenbus_xs.c	2007-08-07 09:59:32.000000000 +0200
+++ head-2007-08-07/drivers/xen/xenbus/xenbus_xs.c	2007-08-07 10:00:04.000000000 +0200
@@ -802,8 +802,8 @@ static int process_msg(void)
 		msg->u.watch.vec = split(body, msg->hdr.len,
 					 &msg->u.watch.vec_size);
 		if (IS_ERR(msg->u.watch.vec)) {
-			kfree(msg);
 			err = PTR_ERR(msg->u.watch.vec);
+			kfree(msg);
 			goto out;
 		}