From 76a9ec004a7f78d03e883b3c72af1baa746f8c3f Mon Sep 17 00:00:00 2001 From: Stefan Taferner Date: Tue, 3 Mar 1998 19:41:03 +0000 Subject: [PATCH] Bugfixes: * sometimes the blank line between messages in a folder was missing * Cc: should not be copied when reply is pressed, now fixed svn path=/trunk/kdenetwork/kmail/; revision=5732 --- kmcomposewin.cpp | 1 + kmfolder.cpp | 9 ++++++++- kmmessage.cpp | 2 +- 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/kmcomposewin.cpp b/kmcomposewin.cpp index fd057b25d..2e0f3af44 100644 --- a/kmcomposewin.cpp +++ b/kmcomposewin.cpp @@ -175,6 +175,7 @@ KMComposeWin::KMComposeWin(KMMessage *aMsg) : KMComposeWinInherited(), //----------------------------------------------------------------------------- KMComposeWin::~KMComposeWin() { + printf("~KMComposeWin\n"); windowList->remove(this); if (mAutoDeleteMsg && mMsg) delete mMsg; diff --git a/kmfolder.cpp b/kmfolder.cpp index e9cbde415..0104bbd85 100644 --- a/kmfolder.cpp +++ b/kmfolder.cpp @@ -657,6 +657,7 @@ int KMFolder::addMsg(KMMessage* aMsg, int* aIndex_ret) long offs, size, len; bool opened = FALSE; QString msgText; + char endStr[3]; int idx; KMFolder* msgParent; @@ -689,7 +690,13 @@ int KMFolder::addMsg(KMMessage* aMsg, int* aIndex_ret) } // write message to folder file - fseek(mStream, 0, SEEK_END); + fseek(mStream, -2, SEEK_END); + fread(endStr, 2, 1, mStream); // ensure separating empty line + if (ftell(mStream) > 0 && endStr[0]!='\n') + { + if (endStr[1]!='\n') fwrite("\n\n", 2, 1, mStream); + else fwrite("\n", 1, 1, mStream); + } fwrite("From aaa@aaa Mon Jan 01 00:00:00 1997\n", 38, 1, mStream); offs = ftell(mStream); fwrite(msgText, len, 1, mStream); diff --git a/kmmessage.cpp b/kmmessage.cpp index 7c1fa735e..22d59131f 100644 --- a/kmmessage.cpp +++ b/kmmessage.cpp @@ -348,6 +348,7 @@ KMMessage* KMMessage::createReply(bool replyToAll) else if (!loopToStr.isEmpty()) toStr = loopToStr + ", "; if (!from().isEmpty()) toStr += from() + ", "; toStr.truncate(toStr.length()-2); + msg->setCc(cc()); } else { @@ -361,7 +362,6 @@ KMMessage* KMMessage::createReply(bool replyToAll) if (replyToAll || !loopToStr.isEmpty()) replyStr = sReplyAllStr; else replyStr = sReplyStr; - msg->setCc(cc()); msg->setBody(asQuotedString(replyStr, sIndentPrefixStr)); if (strnicmp(subject(), "Re:", 3)!=0)