classpath
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Re (2): Bug Report (character encoding aliases)


From: Mark Wielaard
Subject: Re: Re (2): Bug Report (character encoding aliases)
Date: 08 Jan 2002 16:48:34 +0100

Hi,

On Fri, 2001-11-23 at 18:53, address@hidden wrote:
> Mark writes:
> 
> > You can also define the System property
> > "gnu.java.io.encoding_scheme_alias.ISO-8859-1" to have the value "8859_1".
> > See gnu/java/io/EncodingManager.java how this is implemented.
> > 
> > > How did it happen:
> > > ------------------
> > > I executed SpecApplication from the SpecJVM benchmark suite
> > > on my Jaos VM.
> > Could you try the test with the above workaround?
> > If that works we should at least by default define a couple of those
> > System property aliases for Classpath now until we actually merge character
> > conversions with libgcj.
> 
> Sorry for the delay.

Don't worry about it, I just waited almost 2 months before replying :)

> Your fix works fine. Thanks a lot! I implemented it as follows:
> 
>   static void insertGNUProperties ()
>   {
>     properties.put ("gnu.cpu.endian",
>                     (isWordsBigEndian ())? "big" : "little");
>     properties.put ("gnu.java.io.encoding_scheme_alias.ISO-8859-1", "8859_1");
>   }

For now I have added the following aliases for now.
When merging our character encoding with libgcj and/or when we adopt the
new java.nio.charset specification we should get the proper standards
document to define these.

Cheers,

Mark

Index: java/lang/System.java
===================================================================
RCS file: /cvsroot/classpath/classpath/java/lang/System.java,v
retrieving revision 1.11
diff -u -r1.11 System.java
--- java/lang/System.java       21 Sep 2001 04:22:07 -0000      1.11
+++ java/lang/System.java       8 Jan 2002 15:39:37 -0000
@@ -376,6 +376,60 @@
   {
     properties.put ("gnu.cpu.endian",
                    (isWordsBigEndian ())? "big" : "little");
+
+    // Common encoding aliases. See gnu.java.io.EncodingManager.
+    properties.put ("gnu.java.io.encoding_scheme_alias.ISO-8859-1", "8859_1");
+    properties.put ("gnu.java.io.encoding_scheme_alias.ISO-8859-2", "8859_2");
+    properties.put ("gnu.java.io.encoding_scheme_alias.ISO-8859-3", "8859_3");
+    properties.put ("gnu.java.io.encoding_scheme_alias.ISO-8859-4", "8859_4");
+    properties.put ("gnu.java.io.encoding_scheme_alias.ISO-8859-5", "8859_5");
+    properties.put ("gnu.java.io.encoding_scheme_alias.ISO-8859-6", "8859_6");
+    properties.put ("gnu.java.io.encoding_scheme_alias.ISO-8859-7", "8859_7");
+    properties.put ("gnu.java.io.encoding_scheme_alias.ISO-8859-8", "8859_8");
+    properties.put ("gnu.java.io.encoding_scheme_alias.ISO-8859-9", "8859_9");
+
+    properties.put ("gnu.java.io.encoding_scheme_alias.iso-8859-1", "8859_1");
+    properties.put ("gnu.java.io.encoding_scheme_alias.iso-8859-2", "8859_2");
+    properties.put ("gnu.java.io.encoding_scheme_alias.iso-8859-3", "8859_3");
+    properties.put ("gnu.java.io.encoding_scheme_alias.iso-8859-4", "8859_4");
+    properties.put ("gnu.java.io.encoding_scheme_alias.iso-8859-5", "8859_5");
+    properties.put ("gnu.java.io.encoding_scheme_alias.iso-8859-6", "8859_6");
+    properties.put ("gnu.java.io.encoding_scheme_alias.iso-8859-7", "8859_7");
+    properties.put ("gnu.java.io.encoding_scheme_alias.iso-8859-8", "8859_8");
+    properties.put ("gnu.java.io.encoding_scheme_alias.iso-8859-9", "8859_9");
+
+    properties.put ("gnu.java.io.encoding_scheme_alias.iso8859_1", "8859_1");
+    properties.put ("gnu.java.io.encoding_scheme_alias.iso8859_2", "8859_2");
+    properties.put ("gnu.java.io.encoding_scheme_alias.iso8859_3", "8859_3");
+    properties.put ("gnu.java.io.encoding_scheme_alias.iso8859_4", "8859_4");
+    properties.put ("gnu.java.io.encoding_scheme_alias.iso8859_5", "8859_5");
+    properties.put ("gnu.java.io.encoding_scheme_alias.iso8859_6", "8859_6");
+    properties.put ("gnu.java.io.encoding_scheme_alias.iso8859_7", "8859_7");
+    properties.put ("gnu.java.io.encoding_scheme_alias.iso8859_8", "8859_8");
+    properties.put ("gnu.java.io.encoding_scheme_alias.iso8859_9", "8859_9");
+
+    properties.put ("gnu.java.io.encoding_scheme_alias.iso-latin-1", "8859_1");
+    properties.put ("gnu.java.io.encoding_scheme_alias.iso-latin-2", "8859_2");
+    properties.put ("gnu.java.io.encoding_scheme_alias.iso-latin-3", "8859_3");
+    properties.put ("gnu.java.io.encoding_scheme_alias.iso-latin-4", "8859_4");
+    properties.put ("gnu.java.io.encoding_scheme_alias.iso-latin-5", "8859_5");
+    properties.put ("gnu.java.io.encoding_scheme_alias.iso-latin-6", "8859_6");
+    properties.put ("gnu.java.io.encoding_scheme_alias.iso-latin-7", "8859_7");
+    properties.put ("gnu.java.io.encoding_scheme_alias.iso-latin-8", "8859_8");
+    properties.put ("gnu.java.io.encoding_scheme_alias.iso-latin-9", "8859_9");
+
+    properties.put ("gnu.java.io.encoding_scheme_alias.latin1", "8859_1");
+    properties.put ("gnu.java.io.encoding_scheme_alias.latin2", "8859_2");
+    properties.put ("gnu.java.io.encoding_scheme_alias.latin3", "8859_3");
+    properties.put ("gnu.java.io.encoding_scheme_alias.latin4", "8859_4");
+    properties.put ("gnu.java.io.encoding_scheme_alias.latin5", "8859_5");
+    properties.put ("gnu.java.io.encoding_scheme_alias.latin6", "8859_6");
+    properties.put ("gnu.java.io.encoding_scheme_alias.latin7", "8859_7");
+    properties.put ("gnu.java.io.encoding_scheme_alias.latin8", "8859_8");
+    properties.put ("gnu.java.io.encoding_scheme_alias.latin9", "8859_9");
+
+    properties.put ("gnu.java.io.encoding_scheme_alias.UTF-8", "UTF8");
+    properties.put ("gnu.java.io.encoding_scheme_alias.utf-8", "UTF8");
   }
 
   static native boolean isWordsBigEndian ();



reply via email to

[Prev in Thread] Current Thread [Next in Thread]