From 107689159bfce257def5eb02f6b76cb6a5c396a6 Mon Sep 17 00:00:00 2001 From: "Hoa V. DINH" Date: Sat, 19 Nov 2016 18:38:48 -0800 Subject: Fixed #1555: use us-ascii instead of ascii --- src/core/basetypes/MCString.cpp | 2 +- unittest/unittest.mm | 9 +++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/src/core/basetypes/MCString.cpp b/src/core/basetypes/MCString.cpp index 991d7963..57593dae 100644 --- a/src/core/basetypes/MCString.cpp +++ b/src/core/basetypes/MCString.cpp @@ -2459,7 +2459,7 @@ String * String::stringWithMUTF7Data(Data * data) String * String::mUTF7EncodedString() { Data * data = mUTF7EncodedData(); - return data->stringWithCharset("ascii"); + return data->stringWithCharset("us-ascii"); } String * String::mUTF7DecodedString() diff --git a/unittest/unittest.mm b/unittest/unittest.mm index 2e6e6922..430cf0d8 100644 --- a/unittest/unittest.mm +++ b/unittest/unittest.mm @@ -256,4 +256,13 @@ } } +- (void)testMUTF7 { + mailcore::String * mutf7string = mailcore::String::stringWithUTF8Characters("~peter/mail/&U,BTFw-/&ZeVnLIqe-"); + mailcore::IMAPNamespace * ns = mailcore::IMAPNamespace::namespaceWithPrefix(MCSTR(""), '/'); + mailcore::Array * result = ns->componentsFromPath(mutf7string); + XCTAssertTrue(strcmp(MCUTF8(result), "[~peter,mail,台北,日本語]") == 0); + XCTAssertTrue(mutf7string->mUTF7DecodedString()->isEqual(MCSTR("~peter/mail/台北/日本語"))); + XCTAssertTrue(MCSTR("~peter/mail/台北/日本語")->mUTF7EncodedString()->isEqual(mutf7string)); +} + @end -- cgit v1.2.3