l2cap: fix access to freed memory
authorzhanghailiang <zhang.zhanghailiang@huawei.com>
Thu, 14 Aug 2014 07:29:12 +0000 (15:29 +0800)
committerMichael Tokarev <mjt@tls.msk.ru>
Fri, 15 Aug 2014 15:12:48 +0000 (19:12 +0400)
Pointer 'ch' will be used in function 'l2cap_channel_open_req_msg' after
it was previously freed in 'l2cap_channel_open'.
Assigned it to NULL after it is freed.

Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: zhanghailiang <zhang.zhanghailiang@huawei.com>
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
hw/bt/l2cap.c

index 2301d6f..591e047 100644 (file)
@@ -429,7 +429,7 @@ static struct l2cap_chan_s *l2cap_channel_open(struct l2cap_instance_s *l2cap,
                 status = L2CAP_CS_NO_INFO;
             } else {
                 g_free(ch);
-
+                ch = NULL;
                 result = L2CAP_CR_NO_MEM;
                 status = L2CAP_CS_NO_INFO;
             }