2007-08-23 [colin] 2.10.0cvs156
[claws.git] / src / imap.c
index 74c5ba75a99726dc67eb4fa0f37df2c94aaf9a93..a0bc3cb3b312c89f548d978b00decf2a8056c60c 100644 (file)
@@ -1496,6 +1496,7 @@ static gint imap_do_copy_msgs(Folder *folder, FolderItem *dest,
        IMAP_FOLDER_ITEM(dest)->uid_next = 0;
        g_slist_free(IMAP_FOLDER_ITEM(dest)->uid_list);
        IMAP_FOLDER_ITEM(dest)->uid_list = NULL;
+       imap_scan_required(folder, dest);
 
        unlock_session(session);
        if (ok == IMAP_SUCCESS)
@@ -3591,7 +3592,8 @@ gint imap_get_num_list(Folder *folder, FolderItem *_item, GSList **msgnum_list,
        if (!item->should_update) {
                debug_print("get_num_list: nothing to update\n");
                *old_uids_valid = TRUE;
-               if (known_list_len == item->item.total_msgs) {
+               if (known_list_len == item->item.total_msgs
+                && known_list_len > 0) {
                        *msgnum_list = g_slist_copy(item->uid_list);
                        return known_list_len;
                } else {
@@ -4789,7 +4791,7 @@ void imap_cancel_all(void)
                                IMAPSession *imap_session;
                                RemoteFolder *rfolder;
                                
-                               fprintf(stderr, "cancelled\n");
+                               g_printerr("cancelled\n");
                                imap_threaded_cancel(folder);
                                rfolder = (RemoteFolder *) folder;
                                imap_session = (IMAPSession *) rfolder->session;