X-Git-Url: https://git.pterodactylus.net/?p=fms.git;a=blobdiff_plain;f=src%2Fmessage.cpp;h=2cfb5881ec8b3909e8fdbee1845b13f17f216c60;hp=dee644d919b6f6e6f9963f1751c249877e610aa7;hb=37a8d59548287dcad78ef00e7b18058721eb9935;hpb=f208e33c29132aacaec448e74341edea1b925a2a diff --git a/src/message.cpp b/src/message.cpp index dee644d..2cfb588 100644 --- a/src/message.cpp +++ b/src/message.cpp @@ -121,6 +121,9 @@ const bool Message::Load(const long messageid, const long boardid) st.ResultText(7,m_fromname); st.Finalize(); + // strip off any \r\n in subject + m_subject=StringFunctions::Replace(m_subject,"\r\n",""); + // get board list st=m_db->Prepare("SELECT tblBoard.BoardName FROM tblBoard INNER JOIN tblMessageBoard ON tblBoard.BoardID=tblMessageBoard.BoardID WHERE tblMessageBoard.MessageID=?;"); st.Bind(0,messageid); @@ -255,6 +258,8 @@ const bool Message::ParseNNTPMessage(const std::string &nntpmessage) if(mime.GetFieldValue("From")) { m_fromname=mime.GetFieldValue("From"); + // remove any path folding + m_fromname=StringFunctions::Replace(m_fromname,"\r\n",""); // strip off everything between () and <> and any whitespace std::string::size_type startpos=m_fromname.find("("); std::string::size_type endpos; @@ -297,6 +302,8 @@ const bool Message::ParseNNTPMessage(const std::string &nntpmessage) if(mime.GetFieldValue("Newsgroups")) { std::string temp=mime.GetFieldValue("Newsgroups"); + // remove any path folding + temp=StringFunctions::Replace(temp,"\r\n",""); std::vector parts; StringFunctions::SplitMultiple(temp,", \t",parts); for(std::vector::iterator i=parts.begin(); i!=parts.end(); i++) @@ -314,6 +321,8 @@ const bool Message::ParseNNTPMessage(const std::string &nntpmessage) if(mime.GetFieldValue("Followup-To")) { m_replyboardname=mime.GetFieldValue("Followup-To"); + // remove any path folding + m_replyboardname=StringFunctions::Replace(m_replyboardname,"\r\n",""); } else { @@ -326,6 +335,8 @@ const bool Message::ParseNNTPMessage(const std::string &nntpmessage) if(mime.GetFieldValue("Subject")) { m_subject=mime.GetFieldValue("Subject"); + // remove any path folding + m_subject=StringFunctions::Replace(m_subject,"\r\n",""); } else { @@ -335,6 +346,8 @@ const bool Message::ParseNNTPMessage(const std::string &nntpmessage) if(mime.GetFieldValue("References")) { std::string temp=mime.GetFieldValue("References"); + // remove any path folding + temp=StringFunctions::Replace(temp,"\r\n",""); std::vector parts; int count=0; StringFunctions::SplitMultiple(temp,", \t",parts);