Skip to content

Commit c2e0d8d

Browse files
committed
Add tab for backward compatible
1 parent d29c866 commit c2e0d8d

File tree

2 files changed

+14
-1
lines changed

2 files changed

+14
-1
lines changed

ext/mbstring/mbstring.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6395,7 +6395,7 @@ static zend_string* mb_mime_header_decode(zend_string *input, const mbfl_encodin
63956395
p = temp;
63966396
/* Decoding of MIME encoded word was successful;
63976397
* Try to collapse a run of whitespace */
6398-
if (p < e && (*p == '\n' || *p == '\r' || *p == ' ')) {
6398+
if (p < e && (*p == '\n' || *p == '\r' || *p == '\t' || *p == ' ')) {
63996399
do {
64006400
p++;
64016401
} while (p < e && (*p == '\n' || *p == '\r' || *p == '\t' || *p == ' '));

ext/mbstring/tests/gh20674.phpt

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,19 @@ mbstring
77

88
$subject = '=?us-ascii?Q?The_PH?= =?us-ascii?Q?P_8.5?=';
99
var_dump(mb_decode_mimeheader($subject));
10+
11+
// mb_decode_mimeheader's backward compatible for TAB(\t)
12+
$subject = "=?us-ascii?Q?The_PH?=\t=?us-ascii?Q?P_8.5?=";
13+
var_dump(mb_decode_mimeheader($subject));
14+
15+
$subject = "=?us-ascii?Q?The_PH?=\t =?us-ascii?Q?P_8.5?=";
16+
var_dump(mb_decode_mimeheader($subject));
17+
18+
$subject = "=?us-ascii?Q?The_PH?= \t =?us-ascii?Q?P_8.5?=";
19+
var_dump(mb_decode_mimeheader($subject));
1020
?>
1121
--EXPECTF--
1222
string(11) "The PHP 8.5"
23+
string(11) "The PHP 8.5"
24+
string(11) "The PHP 8.5"
25+
string(11) "The PHP 8.5"

0 commit comments

Comments
 (0)