0.9.3claws68
authorChristoph Hohmann <reboot@gmx.ch>
Mon, 28 Jul 2003 22:30:01 +0000 (22:30 +0000)
committerChristoph Hohmann <reboot@gmx.ch>
Mon, 28 Jul 2003 22:30:01 +0000 (22:30 +0000)
* src/folder.c
* src/imap.c
* src/mh.c
* src/procmsg.[ch]
        fix copy to IMAP folder from other folder

ChangeLog.claws
configure.ac
src/folder.c
src/imap.c
src/mh.c
src/procmsg.c
src/procmsg.h

index bb3a582228640e0b8208cebf1593f795974ef536..0447d8bf343c5411e1520d86331076f287fb08b5 100644 (file)
@@ -1,3 +1,11 @@
+2003-07-28 [christoph] 0.9.3claws68
+
+       * src/folder.c
+       * src/imap.c
+       * src/mh.c
+       * src/procmsg.[ch]
+               fix copy to IMAP folder from other folder
+
 2003-07-28 [christoph] 0.9.3claws67
 
        * src/procmsg.c
 2003-07-28 [christoph] 0.9.3claws67
 
        * src/procmsg.c
index 09928f933ceb311f1fcd3372d8d1a76acf541de4..4ff5b152347d1cb7f733de8aadc774eecc6dfe9e 100644 (file)
@@ -11,7 +11,7 @@ MINOR_VERSION=9
 MICRO_VERSION=3
 INTERFACE_AGE=0
 BINARY_AGE=0
 MICRO_VERSION=3
 INTERFACE_AGE=0
 BINARY_AGE=0
-EXTRA_VERSION=67
+EXTRA_VERSION=68
 if test $EXTRA_VERSION -eq 0; then
     VERSION=${MAJOR_VERSION}.${MINOR_VERSION}.${MICRO_VERSION}claws
 else
 if test $EXTRA_VERSION -eq 0; then
     VERSION=${MAJOR_VERSION}.${MINOR_VERSION}.${MICRO_VERSION}claws
 else
index 8b5eb74c3d6258cba243ade3fd2f21cb7c25f2eb..2e7169322ca971f37b3778fc5588edf3c1753b92 100644 (file)
@@ -1670,6 +1670,7 @@ gint folder_item_add_msg(FolderItem *dest, const gchar *file,
        g_return_val_if_fail(dest != NULL, -1);
        g_return_val_if_fail(file != NULL, -1);
  
        g_return_val_if_fail(dest != NULL, -1);
        g_return_val_if_fail(file != NULL, -1);
  
+       fileinfo.msginfo = NULL;
         fileinfo.file = (gchar *)file;
         fileinfo.flags = flags;
         file_list.data = &fileinfo;
         fileinfo.file = (gchar *)file;
         fileinfo.flags = flags;
         file_list.data = &fileinfo;
index d5496b2eaf47b56c74f79b9be094d180587b1ffc..10ea45dcd4560c4bd1e92e92c225242352677d02 100644 (file)
@@ -801,6 +801,7 @@ gint imap_add_msg(Folder *folder, FolderItem *dest, const gchar *file, MsgFlags
 
        g_return_val_if_fail(file != NULL, -1);
 
 
        g_return_val_if_fail(file != NULL, -1);
 
+       fileinfo.msginfo = NULL;
        fileinfo.file = (gchar *)file;
        fileinfo.flags = flags;
        file_list.data = &fileinfo;
        fileinfo.file = (gchar *)file;
        fileinfo.flags = flags;
        file_list.data = &fileinfo;
@@ -858,7 +859,9 @@ gint imap_add_msgs(Folder *folder, FolderItem *dest, GSList *file_list,
                }
 
                if (relation != NULL)
                }
 
                if (relation != NULL)
-                       g_relation_insert(relation, fileinfo, GINT_TO_POINTER(newnum));
+                       g_relation_insert(relation, fileinfo->msginfo != NULL ? 
+                                         fileinfo->msginfo : fileinfo,
+                                         GINT_TO_POINTER(dest->last_num + 1));
                if (newnum > last_uid)
                        last_uid = newnum;
        }
                if (newnum > last_uid)
                        last_uid = newnum;
        }
index 95cd75f1ccaaa63b6e6a97f1ced641208a4dd1bb..b7b95da0555be206bf5cf022ba0b23ff6d1bf1f5 100644 (file)
--- a/src/mh.c
+++ b/src/mh.c
@@ -319,6 +319,7 @@ gint mh_add_msg(Folder *folder, FolderItem *dest, const gchar *file, MsgFlags *f
 
        g_return_val_if_fail(file != NULL, -1);
 
 
        g_return_val_if_fail(file != NULL, -1);
 
+       fileinfo.msginfo = NULL;
        fileinfo.file = (gchar *)file;
        fileinfo.flags = flags;
        file_list.data = &fileinfo;
        fileinfo.file = (gchar *)file;
        fileinfo.flags = flags;
        file_list.data = &fileinfo;
@@ -359,7 +360,6 @@ gint mh_add_msgs(Folder *folder, FolderItem *dest, GSList *file_list,
                }
                if (relation != NULL)
                        g_relation_insert(relation, fileinfo, GINT_TO_POINTER(dest->last_num + 1));
                }
                if (relation != NULL)
                        g_relation_insert(relation, fileinfo, GINT_TO_POINTER(dest->last_num + 1));
-
                g_free(destfile);
                dest->last_num++;
        }
                g_free(destfile);
                dest->last_num++;
        }
index 0a015fc1f5ba66f489fbf12e3710b0e5a2c319df..19cd8878329f2cd47b9584dca98504ca51e9a851 100644 (file)
@@ -397,6 +397,7 @@ GSList *procmsg_get_message_file_list(GSList *mlist)
                         return NULL;
                 }
                 fileinfo = g_new(MsgFileInfo, 1);
                         return NULL;
                 }
                 fileinfo = g_new(MsgFileInfo, 1);
+               fileinfo->msginfo = procmsg_msginfo_new_ref(msginfo);
                 fileinfo->file = file;
                 fileinfo->flags = g_new(MsgFlags, 1);
                 *fileinfo->flags = msginfo->flags;
                 fileinfo->file = file;
                 fileinfo->flags = g_new(MsgFlags, 1);
                 *fileinfo->flags = msginfo->flags;
@@ -416,6 +417,7 @@ void procmsg_message_file_list_free(MsgInfoList *file_list)
 
        for (cur = file_list; cur != NULL; cur = cur->next) {
                fileinfo = (MsgFileInfo *)cur->data;
 
        for (cur = file_list; cur != NULL; cur = cur->next) {
                fileinfo = (MsgFileInfo *)cur->data;
+               procmsg_msginfo_free(fileinfo->msginfo);
                g_free(fileinfo->file);
                g_free(fileinfo->flags);
                g_free(fileinfo);
                g_free(fileinfo->file);
                g_free(fileinfo->flags);
                g_free(fileinfo);
index db4223009e46cb7cb5d16d68e0e39202edc42037..245308711ffea4603d13b3c9b824376d79abdd92 100644 (file)
@@ -197,6 +197,7 @@ struct _MsgInfo
 
 struct _MsgFileInfo
 {
 
 struct _MsgFileInfo
 {
+       MsgInfo *msginfo;
         gchar *file;
         MsgFlags *flags;
 };
         gchar *file;
         MsgFlags *flags;
 };