if (filter1 == NULL) {
return NULL;
}
- filter2->illegal_mode = MBFL_OUTPUTFILTER_ILLEGAL_MODE_CHAR;
- filter2->illegal_substchar = 0x3f; /* '?' */
+ if (filter2 != NULL) {
+ filter2->illegal_mode = MBFL_OUTPUTFILTER_ILLEGAL_MODE_CHAR;
+ filter2->illegal_substchar = 0x3f; /* '?' */
+ }
mbfl_memory_device_init(&device, string->len, (string->len >> 2) + 8 TSRMLS_CC);
/* feed data */
|| orig_str.no_encoding == mbfl_no_encoding_pass) {
orig_str.no_encoding = mbfl_identify_encoding_no(&orig_str, MBSTRG(current_detect_order_list), MBSTRG(current_detect_order_list_size) TSRMLS_CC);
}
- pstr = mbfl_convert_encoding(&orig_str, &conv_str, tran_cs TSRMLS_CC);
+
+ pstr = NULL;
+ {
+ mbfl_string tmpstr;
+
+ if (mbfl_convert_encoding(&orig_str, &tmpstr, tran_cs TSRMLS_CC) != NULL) {
+ tmpstr.no_encoding=mbfl_no_encoding_8bit;
+ pstr = mbfl_convert_encoding(&tmpstr, &conv_str, body_enc TSRMLS_CC);
+ efree(tmpstr.val);
+ }
+ }
if (pstr != NULL) {
message_buf = message = (char *)pstr->val;
} else {
- message = Z_STRVAL_PP(argv[2]);
+ message = estrndup(Z_STRVAL_PP(argv[2]), Z_STRLEN_PP(argv[2]));
}
} else {
/* this is not really an error, so it is allowed. */
Content-Type: text/plain; charset=%s
Content-Transfer-Encoding: %s
-test
+dGVzdA==
To: example@example.com
Subject: test neutral
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: BASE64
-test
+dGVzdA==
Content-Type: text/plain; charset=%s
Content-Transfer-Encoding: %s
-test
+dGVzdA==
To: example@example.com
Subject: =?ISO-2022-JP?B?GyRCJUYlOSVIGyhCIEphcGFuZXNl?=
Mime-Version: 1.0
Content-Type: text/plain; charset=%s
Content-Transfer-Encoding: %s
-test
+dGVzdA==
To: example@example.com
Subject: test English
Mime-Version: 1.0
Content-Type: text/plain; charset=%s
Content-Transfer-Encoding: %s
-test
+dGVzdA==
To: example@example.com
Subject: =?ISO-8859-15?Q?Pr=FCfung=20German?=
Mime-Version: 1.0
Content-Type: text/plain; charset=%s
Content-Transfer-Encoding: %s
-test
+dGVzdA==
To: example@example.com
Subject: =?HZ-GB-2312?B?fnsyYlFpfn0gU2ltcGxpZmllZCBD?=
=?HZ-GB-2312?B?aGluZXNl?=
Content-Type: text/plain; charset=%s
Content-Transfer-Encoding: %s
-test
+dGVzdA==
To: example@example.com
Subject: =?BIG5?B?tPrF5yBUcmFkaXRpb25hbCBDaGluZXNl?=
Mime-Version: 1.0
Content-Type: text/plain; charset=%s
Content-Transfer-Encoding: %s
-test
+dGVzdA==
To: example@example.com
Subject: =?ISO-2022-KR?B?GyQpQw5FVz06Ri4PIEtvcmVhbg8=?=
Mime-Version: 1.0