source-dialog: sources are unique
Destroy the row and break the loop as soon as the source is found
This commit is contained in:
@@ -1637,13 +1637,11 @@ remove_source (GcalManager *manager,
|
|||||||
ESource *source,
|
ESource *source,
|
||||||
gpointer user_data)
|
gpointer user_data)
|
||||||
{
|
{
|
||||||
GtkWidget *row;
|
|
||||||
GcalSourceDialogPrivate *priv;
|
GcalSourceDialogPrivate *priv;
|
||||||
GList *children, *aux;
|
GList *children, *aux;
|
||||||
|
|
||||||
priv = GCAL_SOURCE_DIALOG (user_data)->priv;
|
priv = GCAL_SOURCE_DIALOG (user_data)->priv;
|
||||||
children = gtk_container_get_children (GTK_CONTAINER (priv->calendars_listbox));
|
children = gtk_container_get_children (GTK_CONTAINER (priv->calendars_listbox));
|
||||||
row = NULL;
|
|
||||||
|
|
||||||
for (aux = children; aux != NULL; aux = aux->next)
|
for (aux = children; aux != NULL; aux = aux->next)
|
||||||
{
|
{
|
||||||
@@ -1651,14 +1649,11 @@ remove_source (GcalManager *manager,
|
|||||||
|
|
||||||
if (child_source != NULL && child_source == source)
|
if (child_source != NULL && child_source == source)
|
||||||
{
|
{
|
||||||
row = aux->data;
|
gtk_widget_destroy (aux->data);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (row != NULL)
|
|
||||||
gtk_widget_destroy (row);
|
|
||||||
|
|
||||||
g_list_free (children);
|
g_list_free (children);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user