diff options
author | Ilia Alshanetsky <iliaa@php.net> | 2010-12-01 14:03:36 +0000 |
---|---|---|
committer | Ilia Alshanetsky <iliaa@php.net> | 2010-12-01 14:03:36 +0000 |
commit | 19a0263e65a19905351dc520f930f896cf9a7ca9 (patch) | |
tree | 6be6ef07cf3c7d89fa7b960931d00cf837e5678b /ext/iconv/tests | |
parent | a45631d9663a8a6af7b5a739e48966a604a7e961 (diff) | |
download | php-git-19a0263e65a19905351dc520f930f896cf9a7ca9.tar.gz |
Fixed bug #51250 (iconv_mime_decode() does not ignore malformed Q-encoded words)
Diffstat (limited to 'ext/iconv/tests')
-rw-r--r-- | ext/iconv/tests/bug51250.phpt | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/ext/iconv/tests/bug51250.phpt b/ext/iconv/tests/bug51250.phpt new file mode 100644 index 0000000000..fd2e53b97a --- /dev/null +++ b/ext/iconv/tests/bug51250.phpt @@ -0,0 +1,29 @@ +--TEST-- +Bug #51250 (iconv_mime_decode() does not ignore malformed Q-encoded words) +--SKIPIF-- +<?php extension_loaded('iconv') or die('skip iconv extension is not available'); ?> +--FILE-- +<?php +$m = ICONV_MIME_DECODE_CONTINUE_ON_ERROR; + +var_dump(iconv_mime_decode("Legal encoded-word: =?utf-8?B?Kg==?= .", $m)); +var_dump(iconv_mime_decode("Legal encoded-word: =?utf-8?Q?*?= .", $m)); +var_dump(iconv_mime_decode("Illegal encoded-word: =?utf-8?B?".chr(0xA1)."?= .", $m)); +var_dump(iconv_mime_decode("Illegal encoded-word: =?utf-8?Q?".chr(0xA1)."?= .", $m)); + +var_dump(iconv_mime_decode("Legal encoded-word: =?utf-8?B?Kg==?= .")); +var_dump(iconv_mime_decode("Legal encoded-word: =?utf-8?Q?*?= .")); +var_dump(iconv_mime_decode("Illegal encoded-word: =?utf-8?B?".chr(0xA1)."?= .")); +var_dump(iconv_mime_decode("Illegal encoded-word: =?utf-8?Q?".chr(0xA1)."?= .")); +?> +--EXPECTF-- +string(23) "Legal encoded-word: * ." +string(23) "Legal encoded-word: * ." +string(24) "Illegal encoded-word: ." +string(23) "Illegal encoded-word: ." +string(23) "Legal encoded-word: * ." +string(23) "Legal encoded-word: * ." +string(24) "Illegal encoded-word: ." + +Notice: iconv_mime_decode(): Detected an illegal character in input string in %s on line %d +bool(false) |