[evolution-data-server/gnome-43] I#419 - IMAP: Does not forget renamed folders on the server



commit c36fb4f1efc8b08c0c4e8caaf0f7f3ee6b5c14eb
Author: Milan Crha <mcrha redhat com>
Date:   Tue Sep 27 13:02:43 2022 +0200

    I#419 - IMAP: Does not forget renamed folders on the server
    
    Closes https://gitlab.gnome.org/GNOME/evolution-data-server/-/issues/419

 src/camel/providers/imapx/camel-imapx-store.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)
---
diff --git a/src/camel/providers/imapx/camel-imapx-store.c b/src/camel/providers/imapx/camel-imapx-store.c
index d6c2f70d4..b5c300b25 100644
--- a/src/camel/providers/imapx/camel-imapx-store.c
+++ b/src/camel/providers/imapx/camel-imapx-store.c
@@ -1747,7 +1747,8 @@ imapx_store_mailbox_is_unknown (CamelIMAPXStore *imapx_store,
                        si = g_ptr_array_index (store_infos, ii);
 
                        if (si->mailbox_name && g_str_has_prefix (si->mailbox_name, mailbox_with_separator) 
&& (
-                           !use_subscriptions || (((CamelStoreInfo *) si)->flags & 
CAMEL_STORE_INFO_FOLDER_SUBSCRIBED) != 0)) {
+                           !use_subscriptions || (((CamelStoreInfo *) si)->flags & 
CAMEL_STORE_INFO_FOLDER_SUBSCRIBED) != 0) &&
+                           !imapx_store_mailbox_is_unknown (imapx_store, store_infos, si)) {
                                /* This can be a 'virtual' parent folder of some subscribed subfolder */
                                break;
                        }
@@ -1756,6 +1757,8 @@ imapx_store_mailbox_is_unknown (CamelIMAPXStore *imapx_store,
                is_unknown = ii == store_infos->len;
 
                g_free (mailbox_with_separator);
+       } else if (!mailbox) {
+               is_unknown = TRUE;
        }
 
        g_clear_object (&mailbox);


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]