[bijiben] Manager: unref provider which abort
- From: Pierre-Yves Luyten <pyluyten src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [bijiben] Manager: unref provider which abort
- Date: Wed, 14 May 2014 21:47:45 +0000 (UTC)
commit bf119d03786a912065e5b372e3688f4226866341
Author: Pierre-Yves Luyten <py luyten fr>
Date: Wed May 14 23:46:32 2014 +0200
Manager: unref provider which abort
src/libbiji/biji-manager.c | 18 ++++++++++++++++++
1 files changed, 18 insertions(+), 0 deletions(-)
---
diff --git a/src/libbiji/biji-manager.c b/src/libbiji/biji-manager.c
index e9d76d1..5d46ae0 100644
--- a/src/libbiji/biji-manager.c
+++ b/src/libbiji/biji-manager.c
@@ -506,6 +506,20 @@ on_provider_loaded_cb (BijiProvider *provider,
}
+static void
+on_provider_abort_cb (BijiProvider *provider,
+ BijiManager *self)
+{
+ const BijiProviderInfo *info;
+
+ info = biji_provider_get_info (provider);
+ g_hash_table_remove (self->priv->providers, (gpointer) info->unique_id);
+
+ g_object_unref (G_OBJECT (provider));
+}
+
+
+
/*
* It should be the right place
* to stock somehow providers list
@@ -525,9 +539,13 @@ _add_provider (BijiManager *self,
const BijiProviderInfo *info;
info = biji_provider_get_info (provider);
+ g_hash_table_insert (self->priv->providers, (gpointer) info->unique_id, provider); info =
biji_provider_get_info (provider);
g_hash_table_insert (self->priv->providers, (gpointer) info->unique_id, provider);
+
g_signal_connect (provider, "loaded",
G_CALLBACK (on_provider_loaded_cb), self);
+ g_signal_connect (provider, "abort",
+ G_CALLBACK (on_provider_abort_cb), self);
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]