[evolution] folder_tree_model_folder_renamed_cb: Avoid duplicate rows.
- From: Matthew Barnes <mbarnes src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [evolution] folder_tree_model_folder_renamed_cb: Avoid duplicate rows.
- Date: Sat, 17 Aug 2013 16:54:08 +0000 (UTC)
commit 18f8381651b229b6170bb425e63111954e35603f
Author: Matthew Barnes <mbarnes redhat com>
Date: Sat Aug 17 12:49:03 2013 -0400
folder_tree_model_folder_renamed_cb: Avoid duplicate rows.
Testing IMAP NOTIFY and folder renames, I observed a "folder-created"
signal emission before the "folder-renamed" signal emission. So the
renamed folder already exists in the tree model when we receive the
"folder-renamed" signal. Make sure we handle that sanely.
mail/em-folder-tree-model.c | 5 +++++
1 files changed, 5 insertions(+), 0 deletions(-)
---
diff --git a/mail/em-folder-tree-model.c b/mail/em-folder-tree-model.c
index 66f2926..a7039f2 100644
--- a/mail/em-folder-tree-model.c
+++ b/mail/em-folder-tree-model.c
@@ -1049,6 +1049,11 @@ folder_tree_model_folder_renamed_cb (CamelStore *store,
em_folder_tree_model_remove_folders (model, si, &iter);
+ /* Make sure we don't already have the new folder name. */
+ reference = g_hash_table_lookup (si->full_hash, info->full_name);
+ if (gtk_tree_row_reference_valid (reference))
+ return;
+
parent = g_strdup (info->full_name);
p = strrchr (parent, '/');
if (p)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]