You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@harmony.apache.org by "Tim Ellison (JIRA)" <ji...@apache.org> on 2006/02/27 19:19:58 UTC

[jira] Commented: (HARMONY-139) ICU - characters 0x0384 and 0xB7 are unmapped in ICU implementation of ISO8859-7

    [ http://issues.apache.org/jira/browse/HARMONY-139?page=comments#action_12367998 ] 

Tim Ellison commented on HARMONY-139:
-------------------------------------

Reported as
    http://dev.icu-project.org/cgi-bin/icu-bugs/incoming?findid=5087

> ICU - characters 0x0384 and 0xB7 are unmapped in ICU implementation of ISO8859-7
> --------------------------------------------------------------------------------
>
>          Key: HARMONY-139
>          URL: http://issues.apache.org/jira/browse/HARMONY-139
>      Project: Harmony
>         Type: Bug
>   Components: Classlib
>     Reporter: Vladimir Strigun
>     Priority: Minor

>
> Looks like characters 0x0384 and 0xB7 are unmapped in ICU implementation. Mapping table could be found here: http://www.unicode.org/Public/MAPPINGS/ISO8859/8859-7.TXT
> Please use test below for reproducing:
> import java.nio.*;
> import java.nio.charset.*;
> import com.ibm.icu4jni.charset.CharsetProviderICU;
> import junit.framework.TestCase;
> public class Harmony139 extends TestCase{
>     public static void main(String args[]){
>       junit.textui.TestRunner.run(Harmony139.class);
>     }
>     public void testEncode_JIRA139_1() throws Exception {
>       CharsetProviderICU provider = new CharsetProviderICU(); 
>       Charset iso8859_7 = provider.charsetForName("ISO-8859-7"); 
>       // Uncomment code below to use RI charset 
>       //Charset iso8859_7 = Charset.forName("ISO-8859-7");
>       CharBuffer cb = CharBuffer.allocate(1);
>       cb.put((char)0x0384); cb.flip();
>       ByteBuffer bb = iso8859_7.newEncoder().replaceWith(new byte[] {0x3F}).onMalformedInput(CodingErrorAction.REPLACE).onUnmappableCharacter(CodingErrorAction.REPLACE).encode(cb);
>       assertEquals((byte)0xB4, bb.get(0));
>     }
>     public void testEncode_JIRA139_2() throws Exception {
>       CharsetProviderICU provider = new CharsetProviderICU(); 
>       Charset iso8859_7 = provider.charsetForName("ISO-8859-7"); 
>       // Uncomment code below to use RI charset 
>       //Charset iso8859_7 = Charset.forName("ISO-8859-7");
>       CharBuffer cb = CharBuffer.allocate(1);
>       cb.put((char)0xB7); cb.flip();
>       ByteBuffer bb = iso8859_7.newEncoder().replaceWith(new byte[] {0x3F}).onMalformedInput(CodingErrorAction.REPLACE).onUnmappableCharacter(CodingErrorAction.REPLACE).encode(cb);
>       assertEquals((byte)0xB7, bb.get(0));
>     }
> }
> Both tests passed with RI, and failed with Harmony.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira