/** * g_async_initable_init_finish: * @initable: a #GAsyncInitable. * @res: a #GAsyncResult. * @error: a #GError location to store the error occurring, or %NULL to * ignore. * * Finishes asynchronous initialization and returns the result. * See g_async_initable_init_async(). * * Returns: %TRUE if successful. If an error has occurred, this function * will return %FALSE and set @error appropriately if present. * * Since: 2.22 */ gboolean g_async_initable_init_finish (GAsyncInitable *initable, GAsyncResult *res, GError **error) { GAsyncInitableIface *iface; g_return_val_if_fail (G_IS_ASYNC_INITABLE (initable), FALSE); g_return_val_if_fail (G_IS_ASYNC_RESULT (res), FALSE); if (g_async_result_legacy_propagate_error (res, error)) return FALSE; iface = G_ASYNC_INITABLE_GET_IFACE (initable); return (* iface->init_finish) (initable, res, error); }
/** * g_volume_eject_finish: * @volume: pointer to a #GVolume * @result: a #GAsyncResult * @error: a #GError location to store an error, or %NULL to ignore * * Finishes ejecting a volume. If any errors occurred during the operation, * @error will be set to contain the errors and %FALSE will be returned. * * Returns: %TRUE, %FALSE if operation failed * * Deprecated: 2.22: Use g_volume_eject_with_operation_finish() instead. **/ gboolean g_volume_eject_finish (GVolume *volume, GAsyncResult *result, GError **error) { GVolumeIface *iface; g_return_val_if_fail (G_IS_VOLUME (volume), FALSE); g_return_val_if_fail (G_IS_ASYNC_RESULT (result), FALSE); if (g_async_result_legacy_propagate_error (result, error)) return FALSE; if (g_async_result_is_tagged (result, g_volume_eject_with_operation)) return g_task_propagate_boolean (G_TASK (result), error); iface = G_VOLUME_GET_IFACE (volume); return (* iface->eject_finish) (volume, result, error); }
/** * g_loadable_icon_load_finish: * @icon: a #GLoadableIcon. * @res: a #GAsyncResult. * @type: a location to store the type of the loaded icon, %NULL to ignore. * @error: a #GError location to store the error occurring, or %NULL to * ignore. * * Finishes an asynchronous icon load started in g_loadable_icon_load_async(). * * Returns: (transfer full): a #GInputStream to read the icon from. **/ GInputStream * g_loadable_icon_load_finish (GLoadableIcon *icon, GAsyncResult *res, char **type, GError **error) { GLoadableIconIface *iface; g_return_val_if_fail (G_IS_LOADABLE_ICON (icon), NULL); g_return_val_if_fail (G_IS_ASYNC_RESULT (res), NULL); if (g_async_result_legacy_propagate_error (res, error)) return NULL; iface = G_LOADABLE_ICON_GET_IFACE (icon); return (* iface->load_finish) (icon, res, type, error); }
/** * g_drive_stop_finish: * @drive: a #GDrive. * @result: a #GAsyncResult. * @error: a #GError, or %NULL * * Finishes stopping a drive. * * Returns: %TRUE if the drive has been stopped successfully, * %FALSE otherwise. * * Since: 2.22 */ gboolean g_drive_stop_finish (GDrive *drive, GAsyncResult *result, GError **error) { GDriveIface *iface; g_return_val_if_fail (G_IS_DRIVE (drive), FALSE); g_return_val_if_fail (G_IS_ASYNC_RESULT (result), FALSE); if (g_async_result_legacy_propagate_error (result, error)) return FALSE; else if (g_async_result_is_tagged (result, g_drive_start)) return g_task_propagate_boolean (G_TASK (result), error); iface = G_DRIVE_GET_IFACE (drive); return (* iface->stop_finish) (drive, result, error); }