Finished up headers mode 1 vs 9, also change vertical bars in subject to hyphens...
authorArt Cancro <ajc@citadel.org>
Fri, 6 Jan 2017 23:24:25 +0000 (18:24 -0500)
committerArt Cancro <ajc@citadel.org>
Fri, 6 Jan 2017 23:24:25 +0000 (18:24 -0500)
citadel/citadel.h
citadel/configure.ac
citadel/modules/ctdlproto/serv_messages.c

index a21b32e6f66ca0141183ec38f13c1bc928ad78ae..cb2bafd9dd9b6ad2aea1fd8b00d756dee0292c69 100644 (file)
@@ -45,7 +45,7 @@ extern "C" {
  * usually more strict because you're not really supposed to dump/load and
  * upgrade at the same time.
  */
-#define REV_LEVEL      904             /* This version */
+#define REV_LEVEL      905             /* This version */
 #define REV_MIN                591             /* Oldest compatible database */
 #define EXPORT_REV_MIN 760             /* Oldest compatible export files */
 #define LIBCITADEL_MIN 903             /* Minimum required version of libcitadel */
index 39015cb2ef58cdaf5d733b976881f490dde3d66d..0caefacec8f0b4f605b8583f009d5aa825fbfa3c 100644 (file)
@@ -1,6 +1,6 @@
 dnl Process this file with autoconf to produce a configure script.
 AC_PREREQ(2.52)
-AC_INIT([Citadel], [903], [http://www.citadel.org/])
+AC_INIT([Citadel], [905], [http://www.citadel.org/])
 AC_REVISION([$Revision: 5108 $])
 AC_CONFIG_SRCDIR([citserver.c])
 AC_CONFIG_HEADER(sysdep.h)
index 4be56cde67508f75b1b8225e25f692fd26872b09..96e49b6534cf7e21636ac4cc52db8d4cef31fec2 100644 (file)
@@ -48,6 +48,17 @@ void headers_listing(long msgnum, void *userdata)
                return;
        }
 
+       // change all vertical bars in the subject to hyphens so it doesn't screw up the protocol
+       if (!CM_IsEmpty(msg, eMsgSubject)) {
+               char *p;
+               for (p=msg->cm_fields[eMsgSubject]; *p; p++) {
+                       printf("%c\n", *p);
+                       if (*p == '|') {
+                               *p = '-';
+                       }
+               }
+       }
+
        // output all fields except the references hash
        cprintf("%ld|%s|%s|%s|%s|%s",
                msgnum,
@@ -58,7 +69,7 @@ void headers_listing(long msgnum, void *userdata)
                (!CM_IsEmpty(msg, eMsgSubject) ? msg->cm_fields[eMsgSubject] : "")
        );
 
-       if (output_mode == MSG_HDRS_THREADS) {
+       if (output_mode == MSG_HDRS_THREADS) {          // field view with thread hashes
 
                // output the references hash
                cprintf ("|%d|", 
@@ -76,10 +87,13 @@ void headers_listing(long msgnum, void *userdata)
                        }
                }
        
-               cprintf("|");
+               cprintf("|\n");
+       }
+
+       else {                                          // field view with no threads, subject extends out forever
+               cprintf("\n");
        }
 
-       cprintf("\n");
        CM_Free(msg);
 }