[balsa] mailbox-imap: Do not cast local mailbox to IMAP



commit 8d86b04b5c0afdea143c1d75fcaeb875e6bc994f
Author: Peter Bloomfield <PeterBloomfield bellsouth net>
Date:   Thu Jul 11 12:27:13 2019 -0400

    mailbox-imap: Do not cast local mailbox to IMAP
    
    * libbalsa/mailbox_imap.c (libbalsa_mailbox_imap_messages_copy):
      Fix some bad logic from commit 2d54e175561c9e382701d63ed8dde4746959559b

 ChangeLog               | 5 +++++
 libbalsa/mailbox_imap.c | 9 +++------
 2 files changed, 8 insertions(+), 6 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index 3717a722c..6c70d0aab 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2019-07-11  Peter Bloomfield  <pbloomfield bellsouth net>
+
+       * libbalsa/mailbox_imap.c (libbalsa_mailbox_imap_messages_copy):
+       Fix some bad logic from commit 2d54e175561c9e382701d63ed8dde4746959559b
+
 2019-07-06  Peter Bloomfield  <pbloomfield bellsouth net>
 
        Fix some scan-build reports
diff --git a/libbalsa/mailbox_imap.c b/libbalsa/mailbox_imap.c
index 8f0ee480e..9e00e9646 100644
--- a/libbalsa/mailbox_imap.c
+++ b/libbalsa/mailbox_imap.c
@@ -3286,13 +3286,10 @@ libbalsa_mailbox_imap_messages_copy(LibBalsaMailbox * mailbox,
                                    LibBalsaMailbox * dest, GError **err)
 {
     LibBalsaMailboxImap *mimap = LIBBALSA_MAILBOX_IMAP(mailbox);
-    LibBalsaMailboxRemote *remote = LIBBALSA_MAILBOX_REMOTE(mimap);
-    LibBalsaServer *server = libbalsa_mailbox_remote_get_server(remote);
-    LibBalsaMailboxImap *mimap_dest = LIBBALSA_MAILBOX_IMAP(dest);
-    LibBalsaMailboxRemote *remote_dest = LIBBALSA_MAILBOX_REMOTE(mimap_dest);
-    LibBalsaServer *server_dest = libbalsa_mailbox_remote_get_server(remote_dest);
+    LibBalsaServer *server = LIBBALSA_MAILBOX_REMOTE_SERVER(mimap);
 
-    if (server == server_dest) {
+    if (LIBBALSA_IS_MAILBOX_IMAP(dest) && LIBBALSA_MAILBOX_REMOTE_SERVER(dest) == server) {
+        LibBalsaMailboxImap *mimap_dest = (LibBalsaMailboxImap *) dest;
         gboolean ret;
        ImapMboxHandle *handle = mimap->handle;
        ImapSequence uid_sequence;


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