aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core
diff options
context:
space:
mode:
authorGravatar Ken Grigsby <grigsby@thursby.com>2013-06-20 11:10:34 -0500
committerGravatar Ken Grigsby <grigsby@thursby.com>2013-06-20 11:10:34 -0500
commit00129b3b39ff076f3925d550dff3580e4854a43f (patch)
tree9b86533385786144c1c06a994ffa2a7d75d8980e /src/core
parent29372a8a47c438fc433f58f3b83ce2fa11768d59 (diff)
Fix crash in recipientWithReplyAll when mCc is NULL
Diffstat (limited to 'src/core')
-rw-r--r--src/core/abstract/MCMessageHeader.cc44
1 files changed, 24 insertions, 20 deletions
diff --git a/src/core/abstract/MCMessageHeader.cc b/src/core/abstract/MCMessageHeader.cc
index e0476743..3a2a5872 100644
--- a/src/core/abstract/MCMessageHeader.cc
+++ b/src/core/abstract/MCMessageHeader.cc
@@ -1153,26 +1153,30 @@ Array * MessageHeader::recipientWithReplyAll(bool replyAll, bool includeTo, bool
Array * recipient;
recipient = new Array();
- for(unsigned int i = 0 ; i < to()->count() ; i ++) {
- Address * address = (Address *) to()->objectAtIndex(i);
- if (addedAddresses->containsObject(address->mailbox()->lowercaseString())) {
- continue;
- }
- if (address->mailbox() == NULL)
- continue;
- recipient->addObject(address);
- addedAddresses->addObject(address->mailbox()->lowercaseString());
- }
- for(unsigned int i = 0 ; i < cc()->count() ; i ++) {
- Address * address = (Address *) cc()->objectAtIndex(i);
- if (addedAddresses->containsObject(address->mailbox()->lowercaseString())) {
- continue;
- }
- if (address->mailbox() == NULL)
- continue;
- recipient->addObject(address);
- addedAddresses->addObject(address->mailbox()->lowercaseString());
- }
+ if (to() != NULL) {
+ for(unsigned int i = 0 ; i < to()->count() ; i ++) {
+ Address * address = (Address *) to()->objectAtIndex(i);
+ if (addedAddresses->containsObject(address->mailbox()->lowercaseString())) {
+ continue;
+ }
+ if (address->mailbox() == NULL)
+ continue;
+ recipient->addObject(address);
+ addedAddresses->addObject(address->mailbox()->lowercaseString());
+ }
+ }
+ if (cc() != NULL) {
+ for(unsigned int i = 0 ; i < cc()->count() ; i ++) {
+ Address * address = (Address *) cc()->objectAtIndex(i);
+ if (addedAddresses->containsObject(address->mailbox()->lowercaseString())) {
+ continue;
+ }
+ if (address->mailbox() == NULL)
+ continue;
+ recipient->addObject(address);
+ addedAddresses->addObject(address->mailbox()->lowercaseString());
+ }
+ }
if (recipient->count() > 0) {
hasCc = true;
}