aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core
diff options
context:
space:
mode:
authorGravatar Matt Ronge <mronge@mronge.com>2014-03-14 13:06:50 -0500
committerGravatar Matt Ronge <mronge@mronge.com>2014-03-14 13:06:50 -0500
commit3bda01fedffff8e705ae0f99fa9028a389255f9d (patch)
treeec40204a443d8c9fde3ba6fcf0c5811997fc405b /src/core
parent258db9ca698cf83030057ca6cb10b6d08e094c1b (diff)
Moved strip whitespace into its own method
Diffstat (limited to 'src/core')
-rw-r--r--src/core/basetypes/MCString.cc18
-rw-r--r--src/core/basetypes/MCString.h2
-rwxr-xr-xsrc/core/imap/MCIMAPSession.cc11
3 files changed, 21 insertions, 10 deletions
diff --git a/src/core/basetypes/MCString.cc b/src/core/basetypes/MCString.cc
index 054cbb80..3f0338db 100644
--- a/src/core/basetypes/MCString.cc
+++ b/src/core/basetypes/MCString.cc
@@ -1795,6 +1795,24 @@ String * String::flattenHTML()
return flattenHTMLAndShowBlockquote(true);
}
+String * String::stripWhitespace()
+{
+ String *str = (String *)copy();
+
+ str->replaceOccurrencesOfString(MCSTR("\t"), MCSTR(" "));
+ str->replaceOccurrencesOfString(MCSTR("\n"), MCSTR(" "));
+ str->replaceOccurrencesOfString(MCSTR("\v"), MCSTR(" "));
+ str->replaceOccurrencesOfString(MCSTR("\f"), MCSTR(" "));
+ str->replaceOccurrencesOfString(MCSTR("\r"), MCSTR(" "));
+
+ while (str->replaceOccurrencesOfString(MCSTR(" "), MCSTR(" ")) > 0) {
+ /* do nothing */
+ }
+
+ return str;
+}
+
+
bool String::hasSuffix(String * suffix)
{
if (mLength >= suffix->mLength) {
diff --git a/src/core/basetypes/MCString.h b/src/core/basetypes/MCString.h
index 7fd07570..25439cf2 100644
--- a/src/core/basetypes/MCString.h
+++ b/src/core/basetypes/MCString.h
@@ -86,6 +86,8 @@ namespace mailcore {
virtual String * flattenHTMLAndShowBlockquote(bool showBlockquote);
virtual String * flattenHTMLAndShowBlockquoteAndLink(bool showBlockquote, bool showLink);
+ virtual String * stripWhitespace();
+
virtual String * lastPathComponent();
virtual String * pathExtension();
virtual Data * dataUsingEncoding(const char * charset = NULL);
diff --git a/src/core/imap/MCIMAPSession.cc b/src/core/imap/MCIMAPSession.cc
index 02e569dc..faabc522 100755
--- a/src/core/imap/MCIMAPSession.cc
+++ b/src/core/imap/MCIMAPSession.cc
@@ -3742,17 +3742,8 @@ String * IMAPSession::plainTextBodyRendering(IMAPMessage * message, String * fol
}
String * plainTextBodyString = htmlBodyString->flattenHTML();
-
if (stripWhitespace) {
- plainTextBodyString->replaceOccurrencesOfString(MCSTR("\t"), MCSTR(" "));
- plainTextBodyString->replaceOccurrencesOfString(MCSTR("\n"), MCSTR(" "));
- plainTextBodyString->replaceOccurrencesOfString(MCSTR("\v"), MCSTR(" "));
- plainTextBodyString->replaceOccurrencesOfString(MCSTR("\f"), MCSTR(" "));
- plainTextBodyString->replaceOccurrencesOfString(MCSTR("\r"), MCSTR(" "));
-
- while (plainTextBodyString->replaceOccurrencesOfString(MCSTR(" "), MCSTR(" ")) > 0) {
- /* do nothing */
- }
+ return plainTextBodyString->stripWhitespace();
}
return plainTextBodyString;