mirror of
https://github.com/php/php-src.git
synced 2026-04-28 02:33:17 +02:00
Fix for bug #48289 (iconv_mime_encode() quoted-printable scheme is broken).
Thanks to Hiroaki Kawai for the original patch.
This commit is contained in:
+1
-1
@@ -1206,7 +1206,7 @@ static php_iconv_err_t _php_iconv_mime_encode(smart_str *pretval, const char *fn
|
||||
prev_in_left = ini_in_left = in_left;
|
||||
ini_in_p = in_p;
|
||||
|
||||
for (out_size = char_cnt; out_size > 0;) {
|
||||
for (out_size = (char_cnt - 2) / 3; out_size > 0;) {
|
||||
size_t prev_out_left;
|
||||
|
||||
nbytes_required = 0;
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
--TEST--
|
||||
Bug #48289 (iconv_mime_encode() quoted-printable scheme is broken)
|
||||
--SKIPIF--
|
||||
<?php extension_loaded('iconv') or die('skip iconv extension is not available'); ?>
|
||||
--FILE--
|
||||
<?php
|
||||
$text = "\xE3\x83\x86\xE3\x82\xB9\xE3\x83\x88\xE3\x83\x86\xE3\x82\xB9\xE3\x83\x88";
|
||||
$options = array(
|
||||
'scheme' => 'Q',
|
||||
'input-charset' => 'UTF-8',
|
||||
'output-charset' => 'UTF-8',
|
||||
'line-length' => 30,
|
||||
);
|
||||
|
||||
echo iconv_mime_encode('Subject', $text, $options);
|
||||
--EXPECT--
|
||||
Subject: =?UTF-8?Q?=E3=83=86?=
|
||||
=?UTF-8?Q?=E3=82=B9?=
|
||||
=?UTF-8?Q?=E3=83=88?=
|
||||
=?UTF-8?Q?=E3=83=86?=
|
||||
=?UTF-8?Q?=E3=82=B9?=
|
||||
=?UTF-8?Q?=E3=83=88?=
|
||||
Reference in New Issue
Block a user