g_return_val_if_fail (g_simple_async_result_is_valid (result, G_OBJECT (initable),
secret_collection_async_initable_init_async), FALSE);
- if (g_simple_async_result_propagate_error (G_SIMPLE_ASYNC_RESULT (result), error))
+ if (_secret_util_propagate_error (G_SIMPLE_ASYNC_RESULT (result), error))
return FALSE;
self->pv->constructing = FALSE;
g_return_val_if_fail (g_simple_async_result_is_valid (result, G_OBJECT (self),
secret_collection_load_items), FALSE);
- if (g_simple_async_result_propagate_error (G_SIMPLE_ASYNC_RESULT (result), error))
+ if (_secret_util_propagate_error (G_SIMPLE_ASYNC_RESULT (result), error))
return FALSE;
return TRUE;
res = G_SIMPLE_ASYNC_RESULT (result);
- if (g_simple_async_result_propagate_error (res, error))
+ if (_secret_util_propagate_error (res, error))
return NULL;
closure = g_simple_async_result_get_op_res_gpointer (res);
secret_collection_search), NULL);
async = G_SIMPLE_ASYNC_RESULT (result);
- if (g_simple_async_result_propagate_error (async, error))
+ if (_secret_util_propagate_error (async, error))
return NULL;
search = g_simple_async_result_get_op_res_gpointer (async);
g_return_val_if_fail (g_simple_async_result_is_valid (result, G_OBJECT (self),
secret_collection_delete), FALSE);
- if (g_simple_async_result_propagate_error (G_SIMPLE_ASYNC_RESULT (result), error))
+ if (_secret_util_propagate_error (G_SIMPLE_ASYNC_RESULT (result), error))
return FALSE;
return TRUE;
g_return_val_if_fail (error == NULL || *error == NULL, NULL);
async = G_SIMPLE_ASYNC_RESULT (result);
- if (g_simple_async_result_propagate_error (async, error))
+ if (_secret_util_propagate_error (async, error))
return NULL;
read = g_simple_async_result_get_op_res_gpointer (async);
if (read->collection)
g_return_val_if_fail (g_simple_async_result_is_valid (result, G_OBJECT (initable),
secret_item_async_initable_init_async), FALSE);
- if (g_simple_async_result_propagate_error (G_SIMPLE_ASYNC_RESULT (result), error))
+ if (_secret_util_propagate_error (G_SIMPLE_ASYNC_RESULT (result), error))
return FALSE;
return TRUE;
res = G_SIMPLE_ASYNC_RESULT (result);
- if (g_simple_async_result_propagate_error (res, error))
+ if (_secret_util_propagate_error (res, error))
return NULL;
closure = g_simple_async_result_get_op_res_gpointer (res);
res = G_SIMPLE_ASYNC_RESULT (result);
- if (g_simple_async_result_propagate_error (res, error))
+ if (_secret_util_propagate_error (res, error))
return FALSE;
return g_simple_async_result_get_op_res_gboolean (res);
}
if (error != NULL) {
- _secret_util_strip_remote_error (&error);
g_simple_async_result_take_error (res, error);
}
secret_item_load_secret), FALSE);
res = G_SIMPLE_ASYNC_RESULT (result);
- if (g_simple_async_result_propagate_error (res, error))
+ if (_secret_util_propagate_error (res, error))
return FALSE;
return TRUE;
g_variant_unref (retval);
}
- if (error != NULL) {
- _secret_util_strip_remote_error (&error);
+ if (error != NULL)
g_simple_async_result_take_error (async, error);
- }
g_simple_async_result_complete (async);
g_object_unref (async);
g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
async = G_SIMPLE_ASYNC_RESULT (result);
- if (g_simple_async_result_propagate_error (async, error))
+ if (_secret_util_propagate_error (async, error))
return FALSE;
return TRUE;
if (error == NULL) {
_secret_item_set_cached_secret (self, set->value);
} else {
- _secret_util_strip_remote_error (&error);
g_simple_async_result_take_error (res, error);
}
if (retval != NULL)
secret_item_set_secret), FALSE);
res = G_SIMPLE_ASYNC_RESULT (result);
- if (g_simple_async_result_propagate_error (res, error))
+ if (_secret_util_propagate_error (res, error))
return FALSE;
return TRUE;
res = G_SIMPLE_ASYNC_RESULT (result);
- if (g_simple_async_result_propagate_error (res, error))
+ if (_secret_util_propagate_error (res, error))
return FALSE;
closure = g_simple_async_result_get_op_res_gpointer (res);
service_xlock_async), -1);
async = G_SIMPLE_ASYNC_RESULT (result);
- if (g_simple_async_result_propagate_error (async, error))
+ if (_secret_util_propagate_error (async, error))
return -1;
xlock = g_simple_async_result_get_op_res_gpointer (async);
secret_service_store), FALSE);
g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
- if (g_simple_async_result_propagate_error (G_SIMPLE_ASYNC_RESULT (result), error))
+ if (_secret_util_propagate_error (G_SIMPLE_ASYNC_RESULT (result), error))
return FALSE;
return TRUE;
secret_service_lookup), NULL);
res = G_SIMPLE_ASYNC_RESULT (result);
- if (g_simple_async_result_propagate_error (res, error))
+ if (_secret_util_propagate_error (res, error))
return NULL;
closure = g_simple_async_result_get_op_res_gpointer (res);
secret_service_clear), FALSE);
res = G_SIMPLE_ASYNC_RESULT (result);
- if (g_simple_async_result_propagate_error (res, error))
+ if (_secret_util_propagate_error (res, error))
return FALSE;
closure = g_simple_async_result_get_op_res_gpointer (res);
secret_service_set_alias), FALSE);
g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
- if (g_simple_async_result_propagate_error (G_SIMPLE_ASYNC_RESULT (result), error))
+ if (_secret_util_propagate_error (G_SIMPLE_ASYNC_RESULT (result), error))
return FALSE;
return TRUE;
response = g_dbus_proxy_call_finish (G_DBUS_PROXY (source), result, &error);
if (error != NULL) {
- _secret_util_strip_remote_error (&error);
g_simple_async_result_take_error (res, error);
} else {
g_simple_async_result_set_op_res_gpointer (res, response,
g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
async = G_SIMPLE_ASYNC_RESULT (result);
- if (g_simple_async_result_propagate_error (async, error))
+ if (_secret_util_propagate_error (async, error))
return FALSE;
retval= g_simple_async_result_get_op_res_gpointer (async);
g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
res = G_SIMPLE_ASYNC_RESULT (result);
- if (g_simple_async_result_propagate_error (res, error))
+ if (_secret_util_propagate_error (res, error))
return FALSE;
if (unlocked || locked) {
closure->out = g_dbus_proxy_call_finish (G_DBUS_PROXY (source), result, &error);
if (error != NULL) {
- _secret_util_strip_remote_error (&error);
g_simple_async_result_take_error (res, error);
}
g_simple_async_result_complete (res);
g_return_val_if_fail (error == NULL || *error == NULL, NULL);
res = G_SIMPLE_ASYNC_RESULT (result);
- if (g_simple_async_result_propagate_error (res, error))
+ if (_secret_util_propagate_error (res, error))
return NULL;
closure = g_simple_async_result_get_op_res_gpointer (res);
g_return_val_if_fail (error == NULL || *error == NULL, NULL);
res = G_SIMPLE_ASYNC_RESULT (result);
- if (g_simple_async_result_propagate_error (res, error))
+ if (_secret_util_propagate_error (res, error))
return NULL;
closure = g_simple_async_result_get_op_res_gpointer (res);
retval = g_dbus_proxy_call_finish (G_DBUS_PROXY (source), result, &error);
if (error != NULL) {
- _secret_util_strip_remote_error (&error);
g_simple_async_result_take_error (res, error);
g_simple_async_result_complete (res);
gint count;
res = G_SIMPLE_ASYNC_RESULT (result);
- if (g_simple_async_result_propagate_error (res, error))
+ if (_secret_util_propagate_error (res, error))
return -1;
closure = g_simple_async_result_get_op_res_gpointer (res);
g_variant_unref (retval);
} else {
- _secret_util_strip_remote_error (&error);
g_simple_async_result_take_error (res, error);
g_simple_async_result_complete (res);
}
_secret_service_delete_path), FALSE);
res = G_SIMPLE_ASYNC_RESULT (result);
- if (g_simple_async_result_propagate_error (res, error))
+ if (_secret_util_propagate_error (res, error))
return FALSE;
closure = g_simple_async_result_get_op_res_gpointer (res);
g_variant_unref (retval);
} else {
- _secret_util_strip_remote_error (&error);
g_simple_async_result_take_error (res, error);
g_simple_async_result_complete (res);
}
res = G_SIMPLE_ASYNC_RESULT (result);
- if (g_simple_async_result_propagate_error (res, error))
+ if (_secret_util_propagate_error (res, error))
return NULL;
closure = g_simple_async_result_get_op_res_gpointer (res);
g_variant_unref (retval);
} else {
- _secret_util_strip_remote_error (&error);
g_simple_async_result_take_error (res, error);
g_simple_async_result_complete (res);
}
res = G_SIMPLE_ASYNC_RESULT (result);
- if (g_simple_async_result_propagate_error (res, error))
+ if (_secret_util_propagate_error (res, error))
return NULL;
closure = g_simple_async_result_get_op_res_gpointer (res);
void _secret_util_strip_remote_error (GError **error);
+gboolean _secret_util_propagate_error (GSimpleAsyncResult *async,
+ GError **error);
+
gchar * _secret_util_parent_path (const gchar *path);
gboolean _secret_util_empty_path (const gchar *path);
g_clear_error (&error);
if (error != NULL) {
- _secret_util_strip_remote_error (&error);
g_simple_async_result_take_error (res, error);
perform_prompt_complete (res, TRUE);
g_clear_error (&error);
if (error != NULL) {
- _secret_util_strip_remote_error (&error);
g_simple_async_result_take_error (res, error);
perform_prompt_complete (res, TRUE);
}
res = G_SIMPLE_ASYNC_RESULT (result);
- if (g_simple_async_result_propagate_error (res, error))
+ if (_secret_util_propagate_error (res, error))
return NULL;
closure = g_simple_async_result_get_op_res_gpointer (res);
secret_service_real_prompt_async), NULL);
res = G_SIMPLE_ASYNC_RESULT (result);
- if (g_simple_async_result_propagate_error (res, error))
+ if (_secret_util_propagate_error (res, error))
return NULL;
retval = g_simple_async_result_get_op_res_gpointer (res);
g_return_val_if_fail (g_simple_async_result_is_valid (result, G_OBJECT (initable),
secret_service_async_initable_init_async), FALSE);
- if (g_simple_async_result_propagate_error (G_SIMPLE_ASYNC_RESULT (result), error))
+ if (_secret_util_propagate_error (G_SIMPLE_ASYNC_RESULT (result), error))
return FALSE;
return TRUE;
/* Just ensuring that the service matches flags */
if (g_simple_async_result_is_valid (result, source_object, secret_service_get)) {
- if (!g_simple_async_result_propagate_error (G_SIMPLE_ASYNC_RESULT (result), error))
+ if (!_secret_util_propagate_error (G_SIMPLE_ASYNC_RESULT (result), error))
service = g_object_ref (source_object);
/* Creating a whole new service */
g_return_val_if_fail (g_simple_async_result_is_valid (result, G_OBJECT (self),
secret_service_load_collections), FALSE);
- if (g_simple_async_result_propagate_error (G_SIMPLE_ASYNC_RESULT (result), error))
+ if (_secret_util_propagate_error (G_SIMPLE_ASYNC_RESULT (result), error))
return FALSE;
return TRUE;
g_variant_unref (response);
} else {
- _secret_util_strip_remote_error (&error);
g_simple_async_result_take_error (res, error);
g_simple_async_result_complete (res);
}
/* Other errors result in a failure */
} else {
- _secret_util_strip_remote_error (&error);
g_simple_async_result_take_error (res, error);
g_simple_async_result_complete (res);
}
_secret_session_open_finish (GAsyncResult *result,
GError **error)
{
- if (g_simple_async_result_propagate_error (G_SIMPLE_ASYNC_RESULT (result), error))
+ if (_secret_util_propagate_error (G_SIMPLE_ASYNC_RESULT (result), error))
return FALSE;
return TRUE;
return quark;
}
+gboolean
+_secret_util_propagate_error (GSimpleAsyncResult *async,
+ GError **error)
+{
+ if (!g_simple_async_result_propagate_error (async, error))
+ return FALSE;
+
+ _secret_util_strip_remote_error (error);
+ return TRUE;
+}
+
void
_secret_util_strip_remote_error (GError **error)
{
if (error == NULL) {
process_get_all_reply (proxy, retval);
} else {
- _secret_util_strip_remote_error (&error);
g_simple_async_result_take_error (res, error);
}
if (retval != NULL)
res = G_SIMPLE_ASYNC_RESULT (result);
- if (g_simple_async_result_propagate_error (res, error))
+ if (_secret_util_propagate_error (res, error))
return FALSE;
return TRUE;
retval = g_dbus_connection_call_finish (G_DBUS_CONNECTION (source),
result, &error);
if (error != NULL) {
- _secret_util_strip_remote_error (&error);
g_simple_async_result_take_error (res, error);
}
if (retval != NULL)
res = G_SIMPLE_ASYNC_RESULT (result);
- if (g_simple_async_result_propagate_error (res, error))
+ if (_secret_util_propagate_error (res, error))
return FALSE;
closure = g_simple_async_result_get_op_res_gpointer (res);