aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Viet Hoa Dinh <dinh.viet.hoa@gmail.com>2016-03-25 11:24:38 -0700
committerGravatar Viet Hoa Dinh <dinh.viet.hoa@gmail.com>2016-03-25 11:24:44 -0700
commit3ca0f16318c446c4a39939f1fbb1da2cef0d1e31 (patch)
tree15bdf75964c159f892a2f860d76b940a18454490
parent98c130e480f9b1ade0d49dec1a7a7ecea53643b9 (diff)
Fixed crash #1388
-rw-r--r--src/core/abstract/MCMessageHeader.cpp4
-rw-r--r--src/core/basetypes/MCString.cpp4
2 files changed, 8 insertions, 0 deletions
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;