> From: Pat Niemeyer <###@###.###>
>
> The following code causes a segv for me. I'm running the prebeta on a
> Solaris 2.4 platform. The strange thing is that if I add the repaint at the
> end it works perfectly.
>
> The stack dump follows.
>
> // --------------------------------------------------------------------
>
> package java.awt; // so we can set parent of the button
> import java.awt.Button;
>
> class main {
> public static void main( String argv[] ) {
>
> // make a frame
> Frame f = new Frame("Foo");
> f.resize(100,100);
> f.show();
>
> // manually add a button to it, just for the hell of it
> Button b = new Button("press me");
> b.parent = f;
> b.addNotify();
> b.reshape(20,20, 60, 30);
>
> //b.repaint(); // uncomment me and I won't dump core
> }
> }
>
> // --------------------------------------------------------------------
>
> SIGSEGV 11* segmentation violation
> si_signo [11]: SIGSEGV 11* segmentation violation
> si_errno [0]: Error 0
> si_code [1]: SEGV_ACCERR [addr: 0x4]
>
> stackbase=EE19F000, stackpointer=EE19DAD0
>
> Full thread dump:
> "ScreenUpdater" (TID:0xee8dfa30, sys_thread_t:0xee17cde8) prio=4
> java.lang.Object.wait(Object.java)
> sun.awt.ScreenUpdater.nextEntry(ScreenUpdater.java:67)
> sun.awt.ScreenUpdater.run(ScreenUpdater.java:89)
> "AWT-Motif" (TID:0xee8df0b8, sys_thread_t:0xee19ede8) prio=5 *current thread*
> java.lang.Thread.run(Thread.java)
> "Finalizer thread" (TID:0xee8df620, sys_thread_t:0xee4f5de8) prio=1
> "Async Garbage Collector" (TID:0xee8df5d0, sys_thread_t:0xee517de8) prio=1
> "Idle thread" (TID:0xee8df558, sys_thread_t:0xee539de8) prio=0
> "clock handler" (TID:0xee8df098, sys_thread_t:0xee55bde8) prio=11
> "main" (TID:0xee8df048, sys_thread_t:0x60118) prio=5
>
> The following code causes a segv for me. I'm running the prebeta on a
> Solaris 2.4 platform. The strange thing is that if I add the repaint at the
> end it works perfectly.
>
> The stack dump follows.
>
> // --------------------------------------------------------------------
>
> package java.awt; // so we can set parent of the button
> import java.awt.Button;
>
> class main {
> public static void main( String argv[] ) {
>
> // make a frame
> Frame f = new Frame("Foo");
> f.resize(100,100);
> f.show();
>
> // manually add a button to it, just for the hell of it
> Button b = new Button("press me");
> b.parent = f;
> b.addNotify();
> b.reshape(20,20, 60, 30);
>
> //b.repaint(); // uncomment me and I won't dump core
> }
> }
>
> // --------------------------------------------------------------------
>
> SIGSEGV 11* segmentation violation
> si_signo [11]: SIGSEGV 11* segmentation violation
> si_errno [0]: Error 0
> si_code [1]: SEGV_ACCERR [addr: 0x4]
>
> stackbase=EE19F000, stackpointer=EE19DAD0
>
> Full thread dump:
> "ScreenUpdater" (TID:0xee8dfa30, sys_thread_t:0xee17cde8) prio=4
> java.lang.Object.wait(Object.java)
> sun.awt.ScreenUpdater.nextEntry(ScreenUpdater.java:67)
> sun.awt.ScreenUpdater.run(ScreenUpdater.java:89)
> "AWT-Motif" (TID:0xee8df0b8, sys_thread_t:0xee19ede8) prio=5 *current thread*
> java.lang.Thread.run(Thread.java)
> "Finalizer thread" (TID:0xee8df620, sys_thread_t:0xee4f5de8) prio=1
> "Async Garbage Collector" (TID:0xee8df5d0, sys_thread_t:0xee517de8) prio=1
> "Idle thread" (TID:0xee8df558, sys_thread_t:0xee539de8) prio=0
> "clock handler" (TID:0xee8df098, sys_thread_t:0xee55bde8) prio=11
> "main" (TID:0xee8df048, sys_thread_t:0x60118) prio=5