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
This commit is contained in:
Jan Alexander Steffens (heftig) 2019-09-05 18:38:01 +02:00
parent be541cf9d4
commit aae0329ba3
No known key found for this signature in database
GPG Key ID: A5E9288C4FA415FA

View File

@ -1321,13 +1321,12 @@ 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;
}
}
g_return_val_if_fail (self->pv->session != NULL, FALSE);
return TRUE;