diff options
author | Travis Reitter <treitter@gmail.com> | 2010-06-22 23:43:53 +0800 |
---|---|---|
committer | Travis Reitter <treitter@gmail.com> | 2010-07-21 07:12:35 +0800 |
commit | 6bf4569e50d1df275281b790adcae934b8a53ce7 (patch) | |
tree | 63c3da38226fff7c8822a1a58b07da59fd25e796 /libempathy-gtk/empathy-individual-store.c | |
parent | 10ee532d6097cac699ad317d296d4126079b772f (diff) | |
download | gsoc2013-empathy-6bf4569e50d1df275281b790adcae934b8a53ce7.tar gsoc2013-empathy-6bf4569e50d1df275281b790adcae934b8a53ce7.tar.gz gsoc2013-empathy-6bf4569e50d1df275281b790adcae934b8a53ce7.tar.bz2 gsoc2013-empathy-6bf4569e50d1df275281b790adcae934b8a53ce7.tar.lz gsoc2013-empathy-6bf4569e50d1df275281b790adcae934b8a53ce7.tar.xz gsoc2013-empathy-6bf4569e50d1df275281b790adcae934b8a53ce7.tar.zst gsoc2013-empathy-6bf4569e50d1df275281b790adcae934b8a53ce7.zip |
Avoid potential segfaults if there are no contacts on the first pass.
Diffstat (limited to 'libempathy-gtk/empathy-individual-store.c')
-rw-r--r-- | libempathy-gtk/empathy-individual-store.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/libempathy-gtk/empathy-individual-store.c b/libempathy-gtk/empathy-individual-store.c index 3390f31df..1931106a4 100644 --- a/libempathy-gtk/empathy-individual-store.c +++ b/libempathy-gtk/empathy-individual-store.c @@ -820,7 +820,7 @@ individual_store_manager_setup (gpointer user_data) { EmpathyIndividualStore *self = user_data; EmpathyIndividualStorePriv *priv = GET_PRIV (self); - GList *contacts; + GList *individuals; /* Signal connection. */ @@ -839,10 +839,13 @@ individual_store_manager_setup (gpointer user_data) G_CALLBACK (individual_store_groups_changed_cb), self); /* Add contacts already created. */ - contacts = empathy_individual_manager_get_members (priv->manager); - individual_store_members_changed_cb (priv->manager, "initial add", - contacts, NULL, 0, self); - g_list_free (contacts); + individuals = empathy_individual_manager_get_members (priv->manager); + if (individuals != NULL && FOLKS_IS_INDIVIDUAL (individuals->data)) + { + individual_store_members_changed_cb (priv->manager, "initial add", + individuals, NULL, 0, self); + g_list_free (individuals); + } priv->setup_idle_id = 0; return FALSE; |