diff options
author | Robert Widmann <devteam.codafi@gmail.com> | 2014-10-22 17:30:26 -0600 |
---|---|---|
committer | Robert Widmann <devteam.codafi@gmail.com> | 2014-10-22 17:30:26 -0600 |
commit | 96a8429b8cbebfe970a7411815e9e036313b7f64 (patch) | |
tree | 28e379764c570231485e86d2fbb1a30e3dcb24ba /src | |
parent | c26a7cef6b336ac8ee72061f0fff257415287cb9 (diff) | |
parent | fbf32fa6e0c634bc25b2b84ff1cc262a0ab819b1 (diff) |
Merge remote-tracking branch 'upstream/master' into NNTP-Cleanup
Diffstat (limited to 'src')
-rwxr-xr-x | src/core/imap/MCIMAPSession.cc | 2 | ||||
-rw-r--r-- | src/core/renderer/MCDateFormatter.cc | 6 | ||||
-rw-r--r-- | src/core/rfc822/MCAttachment.cc | 6 | ||||
-rw-r--r-- | src/core/rfc822/MCMessageBuilder.cc | 5 | ||||
-rw-r--r-- | src/core/rfc822/MCMessageBuilder.h | 1 | ||||
-rw-r--r-- | src/core/rfc822/MCMessageParser.cc | 9 | ||||
-rw-r--r-- | src/core/rfc822/MCMessageParser.h | 2 | ||||
-rw-r--r-- | src/objc/rfc822/MCOMessageBuilder.mm | 5 |
8 files changed, 32 insertions, 4 deletions
diff --git a/src/core/imap/MCIMAPSession.cc b/src/core/imap/MCIMAPSession.cc index 50602842..f9cb561b 100755 --- a/src/core/imap/MCIMAPSession.cc +++ b/src/core/imap/MCIMAPSession.cc @@ -3172,7 +3172,7 @@ IMAPIdentity * IMAPSession::identity(IMAPIdentity * clientIdentity, ErrorCode * char * dup_value; dup_name = strdup(key->UTF8Characters()); - dup_value = strdup(clientIdentity->name()->UTF8Characters()); + dup_value = strdup(clientIdentity->infoForKey(key)->UTF8Characters()); mailimap_id_params_list_add_name_value(client_identification, dup_name, dup_value); } diff --git a/src/core/renderer/MCDateFormatter.cc b/src/core/renderer/MCDateFormatter.cc index 96d347d5..4938d5ec 100644 --- a/src/core/renderer/MCDateFormatter.cc +++ b/src/core/renderer/MCDateFormatter.cc @@ -8,10 +8,11 @@ #include "MCDateFormatter.h" #include <stdlib.h> -#include <unicode/udat.h> #if defined(__APPLE__) #define USE_COREFOUNDATION 1 +#else +#include <unicode/udat.h> #endif #if USE_COREFOUNDATION @@ -37,10 +38,11 @@ DateFormatter::~DateFormatter() if (mAppleDateFormatter != NULL) { CFRelease(mAppleDateFormatter); } -#endif +#else if (mDateFormatter != NULL) { udat_close(mDateFormatter); } +#endif MC_SAFE_RELEASE(mDateFormat); MC_SAFE_RELEASE(mTimezone); MC_SAFE_RELEASE(mLocale); diff --git a/src/core/rfc822/MCAttachment.cc b/src/core/rfc822/MCAttachment.cc index 63551b6a..71eea11d 100644 --- a/src/core/rfc822/MCAttachment.cc +++ b/src/core/rfc822/MCAttachment.cc @@ -130,13 +130,17 @@ String * Attachment::mimeTypeForFilename(String * filename) Attachment * Attachment::attachmentWithContentsOfFile(String * filename) { + if (filename == NULL) { + return attachmentWithData(NULL, Data::data()); + } + const char * cPath = filename->fileSystemRepresentation(); struct stat statinfo; int r; r = stat(cPath, &statinfo); if (r < 0) { - return NULL; + return attachmentWithData(filename, Data::data()); } if (S_ISDIR(statinfo.st_mode)) { diff --git a/src/core/rfc822/MCMessageBuilder.cc b/src/core/rfc822/MCMessageBuilder.cc index 0ffe0819..efccbee0 100644 --- a/src/core/rfc822/MCMessageBuilder.cc +++ b/src/core/rfc822/MCMessageBuilder.cc @@ -948,3 +948,8 @@ void MessageBuilder::resetBoundaries() mBoundaries->removeAllObjects(); } +void MessageBuilder::setBoundaries(Array * boundaries) +{ + resetBoundaries(); + mBoundaries->addObjectsFromArray(boundaries); +} diff --git a/src/core/rfc822/MCMessageBuilder.h b/src/core/rfc822/MCMessageBuilder.h index aef594a1..07c4795e 100644 --- a/src/core/rfc822/MCMessageBuilder.h +++ b/src/core/rfc822/MCMessageBuilder.h @@ -58,6 +58,7 @@ namespace mailcore { public: // private virtual String * nextBoundary(); virtual void resetBoundaries(); + virtual void setBoundaries(Array * boundaries); private: String * mHTMLBody; diff --git a/src/core/rfc822/MCMessageParser.cc b/src/core/rfc822/MCMessageParser.cc index 21e2e985..4eb6046e 100644 --- a/src/core/rfc822/MCMessageParser.cc +++ b/src/core/rfc822/MCMessageParser.cc @@ -103,6 +103,15 @@ String * MessageParser::description() return result; } +HashMap * MessageParser::serializable() +{ + HashMap * result = AbstractMessage::serializable(); + if (mMainPart != NULL) { + result->setObjectForKey(MCSTR("mainPart"), mMainPart->serializable()); + } + return result; +} + Object * MessageParser::copy() { return new MessageParser(this); diff --git a/src/core/rfc822/MCMessageParser.h b/src/core/rfc822/MCMessageParser.h index 11de9b58..bf4687cb 100644 --- a/src/core/rfc822/MCMessageParser.h +++ b/src/core/rfc822/MCMessageParser.h @@ -37,6 +37,8 @@ namespace mailcore { virtual AbstractPart * partForContentID(String * contentID); virtual AbstractPart * partForUniqueID(String * uniqueID); + virtual HashMap * serializable(); + private: Data * mData; AbstractPart * mMainPart; diff --git a/src/objc/rfc822/MCOMessageBuilder.mm b/src/objc/rfc822/MCOMessageBuilder.mm index c122ab14..090fc99d 100644 --- a/src/objc/rfc822/MCOMessageBuilder.mm +++ b/src/objc/rfc822/MCOMessageBuilder.mm @@ -110,4 +110,9 @@ MCO_OBJC_SYNTHESIZE_STRING(setBoundaryPrefix, boundaryPrefix) return MCO_TO_OBJC(MCO_NATIVE_INSTANCE->openPGPEncryptedMessageDataWithEncryptedData(MCO_FROM_OBJC(mailcore::Data, encryptedData))); } +- (void) _setBoundaries:(NSArray *)boundaries +{ + MCO_NATIVE_INSTANCE->setBoundaries(MCO_FROM_OBJC(mailcore::Array, boundaries)); +} + @end |