]> code.citadel.org Git - citadel.git/blobdiff - citadel/modules/ctdlproto/serv_messages.c
oops, I left a debug printf in there that I shouldn't have.
[citadel.git] / citadel / modules / ctdlproto / serv_messages.c
index 4be56cde67508f75b1b8225e25f692fd26872b09..0ef0b033fdf862cd569cbd1d0465eddcdf421376 100644 (file)
@@ -48,6 +48,16 @@ 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++) {
+                       if (*p == '|') {
+                               *p = '-';
+                       }
+               }
+       }
+
        // output all fields except the references hash
        cprintf("%ld|%s|%s|%s|%s|%s",
                msgnum,
@@ -58,7 +68,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 +86,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);
 }