diff options
author | Hoa V. DINH <dinh.viet.hoa@gmail.com> | 2015-01-03 23:10:15 -0800 |
---|---|---|
committer | Hoa V. DINH <dinh.viet.hoa@gmail.com> | 2015-01-03 23:10:24 -0800 |
commit | da10b9124b52e34ac49edd1120bc04926e0a44e6 (patch) | |
tree | e0b788d613d7cac4408a983dfedd55721fbdc187 /src/core/rfc822 | |
parent | a54deab9ad377fb36b21ec1fd67a67cb71824ea9 (diff) |
Refactoring, fixed #1013
Diffstat (limited to 'src/core/rfc822')
-rw-r--r-- | src/core/rfc822/MCMessageParser.cpp | 15 | ||||
-rw-r--r-- | src/core/rfc822/MCMessageParser.h | 1 |
2 files changed, 15 insertions, 1 deletions
diff --git a/src/core/rfc822/MCMessageParser.cpp b/src/core/rfc822/MCMessageParser.cpp index 404bc862..71071c02 100644 --- a/src/core/rfc822/MCMessageParser.cpp +++ b/src/core/rfc822/MCMessageParser.cpp @@ -72,6 +72,11 @@ void MessageParser::setBytes(char * dataBytes, unsigned int dataLength) mailmessage_free(msg); } +MessageParser::MessageParser() +{ + init(); +} + MessageParser::MessageParser(Data * data) { init(); @@ -118,7 +123,9 @@ String * MessageParser::description() String * result = String::string(); result->appendUTF8Format("<%s:%p ", MCUTF8(className()), this); result->appendUTF8Format("<%p>", mMainPart); - result->appendString(mMainPart->description()); + if (mMainPart != NULL) { + result->appendString(mMainPart->description()); + } result->appendUTF8Characters(">"); return result; @@ -140,11 +147,17 @@ Object * MessageParser::copy() AbstractPart * MessageParser::partForContentID(String * contentID) { + if (mainPart() == NULL) { + return NULL; + } return mainPart()->partForContentID(contentID); } AbstractPart * MessageParser::partForUniqueID(String * uniqueID) { + if (mainPart() == NULL) { + return NULL; + } return mainPart()->partForUniqueID(uniqueID); } diff --git a/src/core/rfc822/MCMessageParser.h b/src/core/rfc822/MCMessageParser.h index 8d2fe4a6..048cee60 100644 --- a/src/core/rfc822/MCMessageParser.h +++ b/src/core/rfc822/MCMessageParser.h @@ -20,6 +20,7 @@ namespace mailcore { static MessageParser * messageParserWithData(Data * data); static MessageParser * messageParserWithContentsOfFile(String * filename); + MessageParser(); MessageParser(Data * data); virtual ~MessageParser(); |