summaryrefslogtreecommitdiff
path: root/bus.c
diff options
context:
space:
mode:
authorDaniel Mack <zonque@gmail.com>2013-12-18 01:38:43 +0100
committerDaniel Mack <zonque@gmail.com>2013-12-18 01:38:43 +0100
commit4020ca25d2f3352e7e88ba0786aefb87a8485404 (patch)
tree13735873c7e8d4299c5ab6fb9a15887297d5d16e /bus.c
parentb16e9135a5ab4d6379bbb73f7df686cc40b33c17 (diff)
downloadkdbus-bus-4020ca25d2f3352e7e88ba0786aefb87a8485404.tar.gz
kdbus-bus-4020ca25d2f3352e7e88ba0786aefb87a8485404.tar.bz2
kdbus-bus-4020ca25d2f3352e7e88ba0786aefb87a8485404.zip
bus: fix memory leak on malformed messages
Diffstat (limited to 'bus.c')
-rw-r--r--bus.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/bus.c b/bus.c
index 4b741e40b1c..f0a814b14f5 100644
--- a/bus.c
+++ b/bus.c
@@ -332,8 +332,10 @@ int kdbus_bus_make_user(void __user *buf, struct kdbus_cmd_make **make,
}
}
- if (!KDBUS_ITEM_END(item, m))
- return -EINVAL;
+ if (!KDBUS_ITEM_END(item, m)) {
+ ret = -EINVAL;
+ goto exit;
+ }
if (!n) {
ret = -EBADMSG;