Name: kaC94536 Date: 01/12/2000
The following test crashes Linux VM if you change environment variable LANG to unexistent locale.
( For instance, in bash you can use : export LANG=12345)
----------------------------- motif.java ------------------------
import java.awt.Frame;
public class motif
{
public static void main(String[] args) {
new Frame().pack();
}
}
---------------------------------------------------------------
VM crashes If you change LANG to unexistent locale:
-------------------------------- output --------------------------
[kotl@linux-5 test]$ export LANG=12345
[kotl@linux-5 test]$ java motif
Font specified in font.properties not found [--symbol-medium-r-normal--*-%d-*-*-p-*-adobe-fonts
pecific]
/* font errors cut */
method unknown (eip = 400f6170)
SIGSEGV 11* segmentation violation
si_signo [11]: SIGSEGV 11* segmentation violation
si_errno [0]: Success
si_code [0]: SI_USER [pid: 0, uid: 0]
stackpointer=0xbfffd920
Full thread dump Classic VM (1.2.2-RC2-J, green threads):
"AWT-Motif" (TID:0x40eb4748, sys_thread_t:0x82d2860, state:MW) prio=5
at sun.awt.motif.MToolkit.run(Native Method)
at java.lang.Thread.run(Thread.java:479)
"SunToolkit.PostEventQueue-0" (TID:0x40eb4b68, sys_thread_t:0x82a40c0, state:CW) prio=5
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java, Compiled Code)
at sun.awt.PostEventQueue.run(SunToolkit.java:413)
"AWT-EventQueue-0" (TID:0x40eb4b38, sys_thread_t:0x829c798, state:CW) prio=6
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java, Compiled Code)
at java.awt.EventQueue.getNextEvent(EventQueue.java:208)
at java.awt.EventDispatchThread.pumpOneEvent(EventDispatchThread.java:100)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:92)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:83)
"Finalizer" (TID:0x40e95320, sys_thread_t:0x8108048, state:CW) prio=8
at java.lang.Object.wait(Native Method)
é "AWT-EventQueue-0" (0x829c798)
java.awt.Component$AWTTreeLock@40E9CA08/40F045C0: owner "main" (0x804c2b0) 1 entry
java.lang.ref.Reference$Lock@40E953C0/40ECAB20: <unowned>
Waiting to be notified:
"Reference Handler" (0x81032f8)
java.lang.ref.ReferenceQueue$Lock@40E95338/40ECB028: <unowned>
Waiting to be notified:
"Finalizer" (0x8108048)
java.lang.Class@40EA6450/40F3DF68: owner "main" (0x804c2b0) 1 entry
Waiting to enter:
"AWT-Motif" (0x82d2860)
sun.awt.PostEventQueue@40EB4B68/40EF9690: <unowned>
Waiting to be notified:
"SunToolkit.PostEventQueue-0" (0x82a40c0)
Registered Monitor Dump:
Invoker change lock: <unowned>
utf8 hash table: <unowned>
JNI pinning lock: <unowned>
JNI global reference lock: <unowned>
BinClass lock: <unowned>
Class linking lock: <unowned>
System class loader lock: <unowned>
Code rewrite lock: <unowned>
Heap lock: <unowned>
Monitor cache lock: owner "main" (0x804c2b0) 1 entry
Dynamic loading lock: <unowned>
Monitor IO lock: <unowned>
User signal monitor: <unowned>
Waiting to be notified:
"Signal dispatcher" (0x8101440)
Child death monitor: <unowned>
I/O monitor: <unowned>
Alarm monitor: <unowned>
Waiting to be notified:
<unknown thread> (0x8057718)
Thread queue lock: owner "main" (0x804c2b0) 1 entry
Monitor registry: owner "main" (0x804c2b0) 1 entry
---------------------------------------------------------------
Everything is ok with LANG=C:
--------------------------------- output -----------------------
[kotl@linux-5 test]$ export LANG=C
[kotl@linux-5 test]$ java motif
Font specified in font.properties not found [--symbol-medium-r-normal--*-%d-*-*-p-*-adobe-fonts
pecific]
/* font errors cut */
[kotl@linux-5 test]$
======================================================================
======================================================================