Mark Wielaard wrote:
Hi Tom,
On Mon, 2006-12-04 at 15:52 -0500, Thomas Fitzsimmons wrote:
I'm attempting to run MegaMek on cacao + classpath-0_93-branch. I see many
exceptions like this:
Exception during event dispatch:
java.lang.NullPointerException
at
gnu.java.awt.peer.gtk.GtkComponentPeer.paintComponent(GtkComponentPeer.java:316)
at gnu.java.awt.peer.gtk.GtkComponentPeer.handleEvent(GtkComponentPeer.java:284)
at gnu.java.awt.peer.gtk.GtkPanelPeer.handleEvent(GtkPanelPeer.java:63)
at java.awt.Component.dispatchEventImpl(Component.java:5749)
at java.awt.Container.dispatchEventImpl(Container.java:1922)
at java.awt.Component.dispatchEvent(Component.java:2833)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:626)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:85)
at java.lang.VMThread.run(VMThread.java:120)
and (likely as a result of these exceptions) GTK widgets aren't being painted
correctly.
I'm investigating...
Found that already. Lifting this patch from head to the release branch
now:
2006-12-03 Mark Wielaard <mark@xxxxxxxxx>
* gnu/java/awt/peer/gtk/GtkComponentPeer.java (paintArea): Renamed
to currentPaintArea.
(paintComponent): Work with local reference to currentPaintArea.
(updateComponent): Likewise.
(coalescePaintEvent): Set currentPaintArea.
Plus some of the others we found during testing this weekend.
Please retest in half an hour when I flushed all appropriate patches to
the branch.
OK, that fixed the exception, thanks. I'm still seeing the GTK widget painting
problems, and also this when I try to show MegaMek's documentation widget:
Exception in thread "main" java.lang.NullPointerException
at gnu.java.awt.peer.gtk.GtkToolkit.getFontMetrics(GtkToolkit.java:318)
at java.awt.Component.getFontMetrics(Component.java:2193)
at megamek.client.ui.AWT.widget.AdvancedLabel.getSizes(AdvancedLabel.java:71)
at
megamek.client.ui.AWT.widget.AdvancedLabel.getMinimumSize(AdvancedLabel.java:87)
at
megamek.client.ui.AWT.widget.AdvancedLabel.getPreferredSize(AdvancedLabel.java:82)
at java.awt.ScrollPane.layout(ScrollPane.java:488)
at java.awt.ScrollPane.doLayout(ScrollPane.java:470)
at java.awt.ScrollPane.addImpl(ScrollPane.java:458)
at java.awt.Container.add(Container.java:227)
at megamek.client.ui.AWT.CommonHelpDialog.<init>(CommonHelpDialog.java:54)
at megamek.MegaMek.showHelp(MegaMek.java:671)
at megamek.MegaMek.showHelp(MegaMek.java:656)
at megamek.MegaMek.<init>(MegaMek.java:144)
at megamek.MegaMek.main(MegaMek.java:818)
Investigating...
Tom