0.8.10claws84
authorChristoph Hohmann <reboot@gmx.ch>
Wed, 5 Mar 2003 16:41:29 +0000 (16:41 +0000)
committerChristoph Hohmann <reboot@gmx.ch>
Wed, 5 Mar 2003 16:41:29 +0000 (16:41 +0000)
* src/imap.c
        don't ask imap server for non rfc822 headers

(closes bug 71 IMAP FETCH asks for FROM header field twice)

* src/imap.c
        destroy session on socket error to allow reconnecting

ChangeLog.claws
configure.ac
src/imap.c

index b45eb78..f2f256f 100644 (file)
@@ -1,8 +1,20 @@
+2003-03-05 [christoph] 0.8.10claws84
+
+       * src/imap.c
+               don't ask imap server for non rfc822 headers
+
+       (closes bug 71 IMAP FETCH asks for FROM header field twice)
+
+       * src/imap.c
+               destroy session on socket error to allow reconnecting
+
 2003-03-05 [christoph] 0.8.10claws83
 
        * configure.ac
                fix building with gnome when no prefix is set
 
+       (closes bug 66 Gnome directory is set to NONE)
+
 2003-03-05 [paul]      0.8.10claws82
 
        * sync with 0.8.10cvs23
@@ -16,6 +28,8 @@
                o remove some code for single message copy and move
                  operations and use functions for multiple messages
 
+       (closes bug 63 Strange behaviour MOVING messages from MH to IMAP)
+
        * src/news.c
                remove unused include
 
index 54b31fe..84e7fc3 100644 (file)
@@ -11,7 +11,7 @@ MINOR_VERSION=8
 MICRO_VERSION=10
 INTERFACE_AGE=0
 BINARY_AGE=0
-EXTRA_VERSION=claws83
+EXTRA_VERSION=claws84
 VERSION=$MAJOR_VERSION.$MINOR_VERSION.$MICRO_VERSION$EXTRA_VERSION
 
 dnl set $target
index eccab33..0f9d06e 100644 (file)
@@ -2834,11 +2834,15 @@ gint imap_cmd_envelope(SockInfo *sock, guint32 first_uid, guint32 last_uid)
                for (elem = headers; elem->name != NULL; ++elem) {
                        gint namelen = strlen(elem->name);
 
-                       while(namelen && (elem->name[namelen - 1] == ' ' ||
-                               elem->name[namelen - 1] == ':'))
+                       /* Header fields ending with space are not rfc822 headers */
+                       if (elem->name[namelen - 1] == ' ')
+                               continue;
+
+                       /* strip : at the of header field */
+                       if(elem->name[namelen - 1] == ':')
                                namelen--;
                        
-                       if (namelen == 0)
+                       if (namelen <= 0)
                                continue;
 
                        g_string_sprintfa(header_fields, "%s%.*s",
@@ -3279,6 +3283,11 @@ gint imap_get_num_list(Folder *folder, FolderItem *_item, GSList **msgnum_list)
        g_free(cmdbuf);
        ok = imap_cmd_ok(SESSION(session)->sock, argbuf);
        if (ok != IMAP_SUCCESS) {
+               if (ok == IMAP_SOCKET) {
+                       session_destroy((Session *)session);
+                       ((RemoteFolder *)folder)->session = NULL;
+               }
+
                ptr_array_free_strings(argbuf);
                g_ptr_array_free(argbuf, TRUE);
                return -1;