static void async_init_thread (GSimpleAsyncResult *res, GObject *object, GCancellable *cancellable) { GError *error = NULL; if (!g_initable_init (G_INITABLE (object), cancellable, &error)) g_simple_async_result_take_error (res, error); }
static void async_init_thread (GSimpleAsyncResult *res, GObject *object, GCancellable *cancellable) { GError *error = NULL; if (!g_initable_init (G_INITABLE (res), cancellable, &error)) { g_simple_async_result_set_from_error (res, error); g_error_free (error); } }
static void async_init_thread (GTask *task, gpointer source_object, gpointer task_data, GCancellable *cancellable) { GError *error = NULL; if (g_initable_init (G_INITABLE (source_object), cancellable, &error)) g_task_return_boolean (task, TRUE); else g_task_return_error (task, error); }
static gboolean gkm_wrap_prompt_prepare (GkmWrapPrompt *self) { GError *error = NULL; if (!self->initialized) { if (!g_initable_init (G_INITABLE (self), NULL, &error)) { g_warning ("couldn't create system prompt: %s", egg_error_message (error)); g_error_free (error); return FALSE; } self->initialized = TRUE; } return TRUE; }
AppletAgent * applet_agent_new (GError **error) { AppletAgent *agent; agent = g_object_new (APPLET_TYPE_AGENT, NM_SECRET_AGENT_OLD_IDENTIFIER, "org.freedesktop.nm-applet", NM_SECRET_AGENT_OLD_CAPABILITIES, NM_SECRET_AGENT_CAPABILITY_VPN_HINTS, NULL); if (!g_initable_init (G_INITABLE (agent), NULL, error)) { g_object_unref (agent); return NULL; } return agent; }
IdeFileSettings * ide_file_settings_new (IdeObject *parent, GFile *file, const gchar *language) { IdeFileSettingsPrivate *priv; GIOExtensionPoint *extension_point; IdeFileSettings *ret; GList *list; g_return_val_if_fail (G_IS_FILE (file), NULL); g_return_val_if_fail (IDE_IS_OBJECT (parent), NULL); ret = g_object_new (IDE_TYPE_FILE_SETTINGS, "file", file, "language", language, NULL); priv = ide_file_settings_get_instance_private (ret); ide_object_append (parent, IDE_OBJECT (ret)); extension_point = g_io_extension_point_lookup (IDE_FILE_SETTINGS_EXTENSION_POINT); list = g_io_extension_point_get_extensions (extension_point); /* * Don't allow our unsettled count to hit zero until we are finished. */ priv->unsettled_count++; for (; list; list = list->next) { GIOExtension *extension = list->data; g_autoptr(IdeFileSettings) child = NULL; GType gtype; gtype = g_io_extension_get_type (extension); if (!g_type_is_a (gtype, IDE_TYPE_FILE_SETTINGS)) { g_warning ("%s is not an IdeFileSettings", g_type_name (gtype)); continue; } child = g_object_new (gtype, "file", file, "language", language, NULL); ide_object_append (IDE_OBJECT (ret), IDE_OBJECT (child)); if (G_IS_INITABLE (child)) { g_autoptr(GError) error = NULL; if (!g_initable_init (G_INITABLE (child), NULL, &error)) { if (!ide_error_ignore (error)) g_warning ("%s", error->message); } } else if (G_IS_ASYNC_INITABLE (child)) { priv->unsettled_count++; g_async_initable_init_async (G_ASYNC_INITABLE (child), G_PRIORITY_DEFAULT, NULL, ide_file_settings__init_cb, g_object_ref (ret)); } _ide_file_settings_append (ret, child); } priv->unsettled_count--; return ret; }