aboutsummaryrefslogtreecommitdiffstats
path: root/shell/e-storage-set-view.c
diff options
context:
space:
mode:
authorPeter Williams <peterw@ximian.com>2001-09-04 23:30:13 +0800
committerPeter Williams <peterw@src.gnome.org>2001-09-04 23:30:13 +0800
commit3b17294f868cf76f0784aed9465bcf79f88cf37d (patch)
tree128615867c8eda0104f561581726fd1b95136f08 /shell/e-storage-set-view.c
parent25001583d25c1755438da7354740c965b93f9ada (diff)
downloadgsoc2013-evolution-3b17294f868cf76f0784aed9465bcf79f88cf37d.tar.gz
gsoc2013-evolution-3b17294f868cf76f0784aed9465bcf79f88cf37d.tar.zst
gsoc2013-evolution-3b17294f868cf76f0784aed9465bcf79f88cf37d.zip
Remove the folder from the EvolutionStorage as well as the EStorage.
2001-08-30 Peter Williams <peterw@ximian.com> * e-local-storage.c (async_xfer_folder_complete): Remove the folder from the EvolutionStorage as well as the EStorage. 2001-08-29 Peter Williams <peterw@ximian.com> * e-storage-set-view.c (etree_node_destroy_func): Only call remove_node_from_hash if it's not the root node. (removed_storage_cb): Don't remove the node from the hash here, because it will be removed in the node_destroyed callback. (removed_folder_cb): Same. * e-shell-view.c (e_shell_view_remove_control_for_uri): Disconnect from the destroy signal so as not to confuse ourselves. Also, the page remove in the notebook destroys the control and the socket, so don't do that explicitly. * e-shell-folder-commands.c (folder_selection_dialog_folder_selected_callback): Remove the control for the source view if we're moving. svn path=/trunk/; revision=12578
Diffstat (limited to 'shell/e-storage-set-view.c')
-rw-r--r--shell/e-storage-set-view.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/shell/e-storage-set-view.c b/shell/e-storage-set-view.c
index 3ebeb14f06..82e08d2ed3 100644
--- a/shell/e-storage-set-view.c
+++ b/shell/e-storage-set-view.c
@@ -1555,7 +1555,8 @@ etree_node_destroy_func (void *data,
path = (char *) data;
storage_set_view = E_STORAGE_SET_VIEW (user_data);
- remove_node_from_hash (storage_set_view, path);
+ if (strcmp (path, ROOT_NODE_NAME))
+ remove_node_from_hash (storage_set_view, path);
g_free (path);
}
@@ -1602,7 +1603,7 @@ removed_storage_cb (EStorageSet *storage_set,
etree = priv->etree_model;
path = g_strconcat (G_DIR_SEPARATOR_S, e_storage_get_name (storage), NULL);
- node = remove_node_from_hash (storage_set_view, path);
+ node = lookup_node_in_hash (storage_set_view, path);
g_free (path);
e_tree_memory_node_remove (E_TREE_MEMORY(etree), node);
@@ -1683,7 +1684,7 @@ removed_folder_cb (EStorageSet *storage_set,
priv = storage_set_view->priv;
etree = priv->etree_model;
- node = remove_node_from_hash (storage_set_view, path);
+ node = lookup_node_in_hash (storage_set_view, path);
e_tree_memory_node_remove (E_TREE_MEMORY(etree), node);
}