summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLukas Slebodnik <lslebodn@redhat.com>2014-10-10 19:23:33 +0200
committerJakub Hrozek <jhrozek@redhat.com>2014-10-22 16:40:42 +0200
commit82b5395c1519b9392ddd323ece0845b51a994bbc (patch)
tree050aad45e58303aa6c3e7f0b042408422c9b8c25
parentc52d7c41e4127a84f487777c0efa6996f6389c51 (diff)
downloadsssd-82b5395c1519b9392ddd323ece0845b51a994bbc.tar.gz
sssd-82b5395c1519b9392ddd323ece0845b51a994bbc.tar.xz
sssd-82b5395c1519b9392ddd323ece0845b51a994bbc.zip
SBUS: Fix error handling after closing container
If function dbus_message_iter_close_container fail the return variable ret will be set to EINVAL, but function will not be immediately terminated. "goto done" was missing. Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>
-rw-r--r--src/sbus/sssd_dbus_request.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/sbus/sssd_dbus_request.c b/src/sbus/sssd_dbus_request.c
index 7729d4e0d..677ed532f 100644
--- a/src/sbus/sssd_dbus_request.c
+++ b/src/sbus/sssd_dbus_request.c
@@ -286,6 +286,7 @@ int sbus_request_return_array_as_variant(struct sbus_request *dbus_req,
DBUS_ERROR_FAILED,
"Could not close array\n"));
ret = EINVAL;
+ goto done;
}
dbret = dbus_message_iter_close_container(&iter, &variant_iter);
@@ -298,6 +299,7 @@ int sbus_request_return_array_as_variant(struct sbus_request *dbus_req,
DBUS_ERROR_FAILED,
"Could not close variant\n"));
ret = EINVAL;
+ goto done;
}
done: