From 18f8381651b229b6170bb425e63111954e35603f Mon Sep 17 00:00:00 2001 From: Matthew Barnes Date: Sat, 17 Aug 2013 12:49:03 -0400 Subject: 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 file changed, 5 insertions(+) diff --git a/mail/em-folder-tree-model.c b/mail/em-folder-tree-model.c index 66f292695b..a7039f28d1 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) -- cgit v1.2.3