From aae0329ba3eb260e8094388b49e14b8cf42ea91e Mon Sep 17 00:00:00 2001 From: "Jan Alexander Steffens (heftig)" Date: Thu, 5 Sep 2019 18:38:01 +0200 Subject: [PATCH] service: Fix secret_service_ensure_session_finish error propagation The condition checking g_task_is_valid was inverted, resulting in errors being ignored. Move the check to a g_return_val_if_fail to be in line with all other uses of g_task_is_valid. Fixes https://bugs.archlinux.org/task/63666 --- libsecret/secret-service.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/libsecret/secret-service.c b/libsecret/secret-service.c index 6c89bb8..6dea0d1 100644 --- a/libsecret/secret-service.c +++ b/libsecret/secret-service.c @@ -1321,12 +1321,11 @@ secret_service_ensure_session_finish (SecretService *self, { g_return_val_if_fail (SECRET_IS_SERVICE (self), FALSE); g_return_val_if_fail (error == NULL || *error == NULL, FALSE); + g_return_val_if_fail (g_task_is_valid (result, self), FALSE); - if (!g_task_is_valid (result, self)) { - if (!g_task_propagate_boolean (G_TASK (result), error)) { - _secret_util_strip_remote_error (error); - return FALSE; - } + if (!g_task_propagate_boolean (G_TASK (result), error)) { + _secret_util_strip_remote_error (error); + return FALSE; } g_return_val_if_fail (self->pv->session != NULL, FALSE);