/** * pk_backend_spawn_new: **/ PkBackendSpawn * pk_backend_spawn_new (void) { PkBackendSpawn *backend_spawn; backend_spawn = g_object_new (PK_TYPE_BACKEND_SPAWN, NULL); return PK_BACKEND_SPAWN (backend_spawn); }
PkBackendSpawn * pk_backend_spawn_new (GKeyFile *conf) { PkBackendSpawn *backend_spawn; backend_spawn = g_object_new (PK_TYPE_BACKEND_SPAWN, NULL); backend_spawn->priv->conf = g_key_file_ref (conf); backend_spawn->priv->spawn = pk_spawn_new (backend_spawn->priv->conf); g_signal_connect (backend_spawn->priv->spawn, "exit", G_CALLBACK (pk_backend_spawn_exit_cb), backend_spawn); g_signal_connect (backend_spawn->priv->spawn, "stdout", G_CALLBACK (pk_backend_spawn_stdout_cb), backend_spawn); g_signal_connect (backend_spawn->priv->spawn, "stderr", G_CALLBACK (pk_backend_spawn_stderr_cb), backend_spawn); return PK_BACKEND_SPAWN (backend_spawn); }
/** * pk_backend_spawn_finalize: **/ static void pk_backend_spawn_finalize (GObject *object) { PkBackendSpawn *backend_spawn; g_return_if_fail (PK_IS_BACKEND_SPAWN (object)); backend_spawn = PK_BACKEND_SPAWN (object); if (backend_spawn->priv->kill_id > 0) g_source_remove (backend_spawn->priv->kill_id); g_free (backend_spawn->priv->name); g_object_unref (backend_spawn->priv->conf); g_object_unref (backend_spawn->priv->spawn); g_object_unref (backend_spawn->priv->backend); G_OBJECT_CLASS (pk_backend_spawn_parent_class)->finalize (object); }