Bug #16069 Updated: ICONV transliteration failure
| From: | readjust at deneb dot freemail dot ne dot jp | Date: | Fri, 15 Mar 2002 08:21:46 +0000 |
| Subject: | Bug #16069 Updated: ICONV transliteration failure | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-2549@lists.php.net to get a copy of this message | ||
ID: 16069
Updated by: readjust@deneb.freemail.ne.jp
Reported By: readjust@deneb.freemail.ne.jp
Status: Analyzed
Bug Type: ICONV related
Operating System: win32, Linux
PHP Version: 4.1.2
New Comment:
Yes, I know I am a exception :) and most PHP user don't have to care
about this problem. Besides it seems that glibc ICONV can not handle
CP932 characters properly.
Previous Comments:
------------------------------------------------------------------------
[2002-03-14 20:56:46] yohgaki@php.net
I've fixed it whole ago for systems supports iconv in libc.
(Recent Linux/glibc is one of them)
For systems uses libiconv, there is problem still.
(I didn't fix problem with libiconv, since I don't use libiconv ;)
------------------------------------------------------------------------
[2002-03-14 09:40:57] readjust@deneb.freemail.ne.jp
conversion between CP932(a variant of Shift_JIS charset) and any
Japanese charset other than CP932 unexpectantly failed when
transliteration mode is specified like "EUC-JP//TRANSLIT" on the output
encoding and the transliteration requires some larger buffer than
strlen(input_buf) * sizeof(ucs4_t).
testing script:
<?php
for( $i = 0; $i < 20; ++$i ) {
print $i.":".iconv( "EUC-JP", "Shift_JIS", iconv( "CP932",
"EUC-JP//TRANSLIT", "abcd".str_repeat( "****", $i ) )
)."<BR>";
}
for( $i = 0; $i < 20; ++$i ) {
print $i.":".iconv( "EUC-JP", "Shift_JIS", iconv( "CP932",
"EUC-JP//TRANSLIT", "abcd".str_repeat( "++++", $i ) )
)."<BR>";
}
?>
where "****" is ONE character described as "SQUARE MIRIBAARU" (0x876D)
and "++++" is ONE character described as "SQUARE AARU" (0x8765) on
http://www.unicode.org/Public/MAPPINGS/VENDORS/MICSFT/WINDOWS/CP932.TXT
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=16069&edit=1