BZ #143: LANG=C locale causes cacao to hang

Status fields:

creation_ts:2010-10-05 00:44
component:vm
version:default branch
rep_platform:All
op_sys:Linux
bug_status:RESOLVED
resolution:FIXED
reporter:nebojsa@asnn.org
Specifying LANG to some illegal value, one or two chars in length causes cacao to hang.
Test program:
class hello {
        public static void main(String args[]) {
                System.out.println("Locale:"+Locale.getDefault());
                SimpleDateFormat s1 = new SimpleDateFormat();
                System.out.println("Hello World!");
        }
}

when executed as
LANG=C cacao hello
never prints out "Hello World", and causes 100% last (one thread).
Actually, it seems like double error - jamvm converts all illegal combinations to en_US
locale, while cacao just passes them on to gnu classpath, which in turn creates busy
loop.
Tested on arm and x86, with cacao 0.99.4 and mercurial tip, gnu classpath 0.98

Comment #1 by stefan@complang.tuwien.ac.at on 2010-10-19 10:33:06

Then it is a classpath bug. However, as I don't have any hopes of them fixing it, we
will need to copy the workaround from JamVM.

Comment #2 by stefan@complang.tuwien.ac.at on 2010-12-29 19:47:37

Copied JamVM’s approach: http://mips.complang.tuwien.ac.at/hg/cacao/rev/4997cd9e8fe4