From 3ca0f16318c446c4a39939f1fbb1da2cef0d1e31 Mon Sep 17 00:00:00 2001 From: Viet Hoa Dinh Date: Fri, 25 Mar 2016 11:24:38 -0700 Subject: Fixed crash #1388 --- src/core/abstract/MCMessageHeader.cpp | 4 ++++ src/core/basetypes/MCString.cpp | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/src/core/abstract/MCMessageHeader.cpp b/src/core/abstract/MCMessageHeader.cpp index 63675be5..e16f27af 100644 --- a/src/core/abstract/MCMessageHeader.cpp +++ b/src/core/abstract/MCMessageHeader.cpp @@ -516,6 +516,10 @@ void MessageHeader::importIMFFields(struct mailimf_fields * fields) fieldName = field->fld_data.fld_optional_field->fld_name; fieldNameStr = String::stringWithUTF8Characters(fieldName); + if (fieldNameStr == NULL) { + continue; + } + // Set only if this optional-field is not set if (extraHeaderValueForName(fieldNameStr) == NULL) { char * fieldValue; diff --git a/src/core/basetypes/MCString.cpp b/src/core/basetypes/MCString.cpp index 65c8f7a3..98e27f64 100644 --- a/src/core/basetypes/MCString.cpp +++ b/src/core/basetypes/MCString.cpp @@ -1161,6 +1161,10 @@ String * String::stringByDecodingMIMEHeaderValue(const char * phrase) MCLog("could not decode: %s\n", phrase); } + if (result == NULL) { + result = string(); + } + free(decoded); return result; -- cgit v1.2.3