* src/procmsg.c
authorAlfons Hoogervorst <alfons@proteus.demon.nl>
Sun, 27 Jul 2003 11:48:03 +0000 (11:48 +0000)
committerAlfons Hoogervorst <alfons@proteus.demon.nl>
Sun, 27 Jul 2003 11:48:03 +0000 (11:48 +0000)
add missing header members to MsgInfo; fixes the problem of
not displaying X-Faces, as noticed by Ricardo Mones

ChangeLog.claws
configure.ac
src/procmsg.c

index 343843cc415991ac5e3a1a0e81d09d469a2675fd..2b704f9a62d1d8930c1bcc8091dd33b4758b1784 100644 (file)
@@ -1,3 +1,9 @@
+2003-07-27 [alfons]    0.9.3claws58
+
+       * src/procmsg.c
+               add missing header members to MsgInfo; fixes the problem of 
+               not displaying X-Faces, as noticed by Ricardo Mones
+
 2003-07-26 [christoph] 0.9.3claws57
 
        * sync with 0.9.3cvs18
index afbe5d83a07ee8d45049e02460d0d91e27c7c9d1..208a4291ac04e119f7e0edd5cf7f3ef2ad096d74 100644 (file)
@@ -11,7 +11,7 @@ MINOR_VERSION=9
 MICRO_VERSION=3
 INTERFACE_AGE=0
 BINARY_AGE=0
-EXTRA_VERSION=57
+EXTRA_VERSION=58
 if test $EXTRA_VERSION -eq 0; then
     VERSION=${MAJOR_VERSION}.${MINOR_VERSION}.${MICRO_VERSION}claws
 else
index 96ae8728abf0a8f155f361c171fb7ac297484922..201bbe590d32ce27be8054b1be749718254aa11b 100644 (file)
@@ -874,21 +874,11 @@ MsgInfo *procmsg_msginfo_copy(MsgInfo *msginfo)
 
 MsgInfo *procmsg_msginfo_get_full_info(MsgInfo *msginfo)
 {
-#if 0
        MsgInfo *full_msginfo;
        gchar *file;
-#endif
 
        if (msginfo == NULL) return NULL;
 
-       /* 
-        * In Claws we simply return a new reference to the same msginfo.
-        * otherwise the new msginfo has wrong flags and causes incorrect
-        * msgcounts... TODO: fill in data from full_msginfo into msginfo,
-        * we can then keep the new data in the cache
-         */
-       return procmsg_msginfo_new_ref(msginfo);
-#if 0
        file = procmsg_get_message_file(msginfo);
        if (!file) {
                g_warning("procmsg_msginfo_get_full_info(): can't get message file.\n");
@@ -899,6 +889,20 @@ MsgInfo *procmsg_msginfo_get_full_info(MsgInfo *msginfo)
        g_free(file);
        if (!full_msginfo) return NULL;
 
+       /* CLAWS: make sure we add the missing members; see: 
+        * procheader.c::procheader_get_headernames() */
+       if (!msginfo->xface)
+               msginfo->xface = g_strdup(full_msginfo->xface);
+       if (!msginfo->dispositionnotificationto)
+               msginfo->dispositionnotificationto = 
+                       g_strdup(full_msginfo->dispositionnotificationto);
+       if (!msginfo->returnreceiptto)
+               msginfo->returnreceiptto = g_strdup
+                       (full_msginfo->returnreceiptto);
+       procmsg_msginfo_free(full_msginfo);
+
+       return procmsg_msginfo_new_ref(msginfo);
+#if 0
        full_msginfo->msgnum = msginfo->msgnum;
        full_msginfo->size = msginfo->size;
        full_msginfo->mtime = msginfo->mtime;