[kaffe] AWT/QT bug

Fabien Renaud renaud at nentec.de
Fri Jul 9 01:39:52 PDT 2004


Hi Benja,

The second programm works on my ARM machine. BTW I still have problems 
due to mouse :
Java.lang.ArrayIndexOutOfBoundsException
   at java.awt.MouseEvt.getEvent (MouseEvt.java:283)
   at java.awt.Toolkit.evtGetNextEvent (Toolkit.java)
   at java.awt.EventQueue.getNextEvent (EventQueue.java:174)
   at java.awt.EventDispatchThread.run (EventDispatchThread.java:34)

I use qte-2.3.4

Cheers,
Fabien

Benja Fallenstein wrote:

> Hi all,
>
> I've managed to compile awt-qt from the newest CVS, but there's some
> seriously weird bug going on that is way over my head. The following
> program works and produces a frame on the screen:
>
> --------------------------------------------------------------------
> import java.awt.*;
>
> class M {
> ~    public static void call(Frame f) {
>     f.show();
> ~    }
>
> ~    public static void main(String[]s) {
>     Frame f = new Frame("foo");
>     System.out.println();
>     System.out.println("SET VISIBLE");
>     call(f);
>     System.out.println("END SET VISIBLE");
>     System.out.println();
> ~    }
> }
> --------------------------------------------------------------------
>
> However, the following program fails with a NullPointerException in
> native code:
>
> --------------------------------------------------------------------
> import java.awt.*;
>
> class M {
> ~    public static void main(String[]s) {
>     Frame f = new Frame("foo");
>     System.out.println();
>     System.out.println("SET VISIBLE");
>     f.show();
>     System.out.println("END SET VISIBLE");
>     System.out.println();
> ~    }
> }
> --------------------------------------------------------------------
>
> The stack trace is as follows:
>
> java.lang.NullPointerException
> ~   at java.awt.Toolkit.wndSetVisible (Toolkit.java)
> ~   at java.awt.Window.show (Window.java:376)
> ~   at M.main (M.java:8)
>
> The compiler is jikes, kaffe is the newest version from CVS as I
> mentioned. The full output of the working program is:
>
> --------------------------------------------------------------------
> benja at joy:/tmp$ javac M.java && java -cp . M
> tlkProperties
> qapp initialization.
>
> tlkInit Done.
> tlkGetScreenWidth
> tlkGetScreenHeight
> tlkGetResolution
> Native AWT ---->evtInit
> tlkVersion
> Native AWT ---->fntInitFont...Default
> Native AWT ---->fntInitFont...Default
> Native AWT ---->fntInitFont...Default
> Native AWT ---->fntInitFont...Monospaced
> Native AWT ---->fntInitFont...Default
> Native AWT ---->fntInitFont...Default
> Native AWT ---->fntInitFont...Default
> Native AWT ---->fntInitFont...Default
> Native AWT ---->fntGetFixedWidth 0
> Native AWT ---->fntIsWideFont
> tlkDisplayBanner
>
> SET VISIBLE
> wndCreateFrame
> Native AWT ---->createFrame( 0x82c5964, 4,24,-8,-28,..) -> 0x86253b8
> wndSetResizable
> Native AWT ---->setResizable: 0x86253b8, 1, 4,24,1,1
> wndSetTitle
> Native AWT ---->registerSource: mw=0x86253b8 idx=41
> Native AWT ---->registerSource( 0x86253b8) -> 41
> Native AWT ---->setVisible: 86253b8 (41) 1
> Native AWT ---->Event Move: srcIdx=41
> Native AWT ---->Event Resize: srcIdx=41
> Native AWT ---->Event Show: srcIdx=41
> Native AWT ---->Event Paint: srcIdx=41
> Native AWT ---->processing Move Event SrcIdx=41
> Native AWT ---->Event Resize: srcIdx=41
> Native AWT ---->Event Move: srcIdx=41
> Native AWT ---->Event Paint: srcIdx=41
> Native AWT ---->Event MouseButton: srcIdx=41
> Native AWT ---->processing Resize Event SrcIdx=41
> END SET VISIBLE
>
> Native AWT ---->processing Paint Event SrcIdx=41
> Native AWT ---->initGraphics: gr (nil) (tgt 0x86253b8, type=0) xo -4,yo
> -24  4,24 - 1,1  0x861a200 ff000000 ffc0c0c0
> Native AWT ---->painter=862c888
> Native AWT ---->clearRect: 0x8635fd0, 4,24-1,1
> Native AWT ---->processing Resize Event SrcIdx=41
> Native AWT ---->processing Move Event SrcIdx=41
> Native AWT ---->processing Paint Event SrcIdx=41
> Native AWT ---->initGraphics: gr 0x8635fd0 (tgt 0x86253b8, type=0) xo
> -4,yo -24  4,24 - 849,572  0x861a200 ff000000 ffc0c0c0
> Native AWT ---->painter=862c9c0
> Native AWT ---->clearRect: 0x8635fd0, 4,24-849,572
> Native AWT ---->processing MouseMove Event SrcIdx=41
> Native AWT ---->setCursor: 86253b8, 0
> Native AWT ---->Event Key: srcIdx=41
> Native AWT ---->processing KeyPress: SrcIdx=41
> Native AWT ---->KeyEvent: idx=41 keyCode=0 keyChar= mod=0
> Native AWT ---->Event Key: srcIdx=41
> Native AWT ---->processing KeyRelease: SrcIdx=41
> Native AWT ---->KeyEvent: idx=41 keyCode=0 keyChar= mod=0
> Native AWT ---->Event Key: srcIdx=41
> Native AWT ---->processing KeyPress: SrcIdx=41
> Native AWT ---->KeyEvent: idx=41 keyCode=0 keyChar= mod=0
> Native AWT ---->Event Hid: srcIdx=41
> Native AWT ---->Event MouseButton: srcIdx=41
> Native AWT ---->processing MouseMove Event SrcIdx=41
> --------------------------------------------------------------------
>
> (I hit Ctrl-C here)
>
> The full output of the non-working program is:
>
> --------------------------------------------------------------------
> benja at joy:/tmp$ javac M.java && java -cp . M
> tlkProperties
> qapp initialization.
>
> tlkInit Done.
> tlkGetScreenWidth
> tlkGetScreenHeight
> tlkGetResolution
> Native AWT ---->evtInit
> tlkVersion
> Native AWT ---->fntInitFont...Default
> Native AWT ---->fntInitFont...Default
> Native AWT ---->fntInitFont...Default
> Native AWT ---->fntInitFont...Monospaced
> Native AWT ---->fntInitFont...Default
> Native AWT ---->fntInitFont...Default
> Native AWT ---->fntInitFont...Default
> Native AWT ---->fntInitFont...Default
> Native AWT ---->fntGetFixedWidth 0
> Native AWT ---->fntIsWideFont
> tlkDisplayBanner
>
> SET VISIBLE
> wndCreateFrame
> Native AWT ---->createFrame( 0x82c493c, 4,24,-8,-28,..) -> 0x86253b8
> wndSetResizable
> Native AWT ---->setResizable: 0x86253b8, 1, 4,24,1,1
> wndSetTitle
> Native AWT ---->registerSource: mw=0x86253b8 idx=41
> Native AWT ---->registerSource( 0x86253b8) -> 41
> Native AWT ---->setVisible: 86253b8 (41) 1
> Native AWT ---->Event Move: srcIdx=41
> Native AWT ---->Event Resize: srcIdx=41
> Native AWT ---->processing Move Event SrcIdx=41
> Native AWT ---->processing Resize Event SrcIdx=41
> java.lang.NullPointerException
> ~   at java.awt.Toolkit.wndSetVisible (Toolkit.java)
> ~   at java.awt.Window.show (Window.java:376)
> ~   at M.main (M.java:8)
> --------------------------------------------------------------------
>
> Please, does anybody have an idea what's going on?
>
> Thanks,
> - Benja


_______________________________________________
kaffe mailing list
kaffe at kaffe.org
http://kaffe.org/cgi-bin/mailman/listinfo/kaffe







More information about the kaffe mailing list