diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/core/basetypes/MCString.cpp | 1 | ||||
-rw-r--r-- | src/objc/imap/MCOIMAPCheckAccountOperation.mm | 3 |
2 files changed, 3 insertions, 1 deletions
diff --git a/src/core/basetypes/MCString.cpp b/src/core/basetypes/MCString.cpp index 46aebd44..65c8f7a3 100644 --- a/src/core/basetypes/MCString.cpp +++ b/src/core/basetypes/MCString.cpp @@ -2392,6 +2392,7 @@ Array * String::componentsSeparatedByString(String * separator) p = location + separator->length(); } unsigned int length = (unsigned int) (mLength - (p - mUnicodeChars)); + MCAssert(length <= mLength); String * value = new String(p, length); result->addObject(value); value->release(); diff --git a/src/objc/imap/MCOIMAPCheckAccountOperation.mm b/src/objc/imap/MCOIMAPCheckAccountOperation.mm index f1aa59b4..42472431 100644 --- a/src/objc/imap/MCOIMAPCheckAccountOperation.mm +++ b/src/objc/imap/MCOIMAPCheckAccountOperation.mm @@ -62,7 +62,8 @@ typedef void (^CompletionType)(NSError *error); } else { NSError * error = [NSError mco_errorWithErrorCode:op->error()]; if (op->loginResponse() != NULL) { - NSDictionary * userInfo = @{@"IMAPServerError": MCO_TO_OBJC(op->loginResponse())}; + NSMutableDictionary * userInfo = [[error userInfo] mutableCopy]; + userInfo[@"IMAPServerError"] = MCO_TO_OBJC(op->loginResponse()); error = [NSError errorWithDomain:[error domain] code:[error code] userInfo:userInfo]; } _completionBlock(error); |