PopupMenu hangs MRJ in OS X

(Apple Problem ID # 2692214)

    This PopupMenu produces crashes.  You can reproduce this as follows:

    Everything works fine on Windows.  On Macintosh OS 9 the label changes as expected but the PopupMenu doesn't stay up, requiring the user to click on it before it disappears. 

    If you have any insights, workarounds or comments about this test page please contact Mickey Segal.  A listing of  many Macintosh Java bugs with demonstration applets is at this link, including information on how to add any necessary Java plugins.

    The code for this applet is available from this link and displayed below

import java.awt.*;
import java.applet.*;

public class PopTest extends Applet {

Button button;
boolean popupWorks;
PopupMenu pop;
MenuItem[] mi;

public void init()
{
    button = new Button ("Pop up a Menu");
    add(button);
    try
    {
        pop = new PopupMenu();
        mi = new MenuItem[3];
        for (int i=0; i<3; i++)
        {
            mi[i] = new MenuItem("Option " + i);
            pop.add(mi[i]);
        }
        add(pop);
        popupWorks = true;

    }
    catch (Throwable e) 
    {
    popupWorks = false;
    }
}

public boolean action(Event evt, Object obj)
{
    if (popupWorks)
    {
        if (evt.target == button)
        {
            pop.show(button, 100, 10);
            return true;
        }
        else if (evt.target instanceof MenuItem)
        {
            for (int i= 0; i <3; i++) if (evt.target == mi[i])
            {
                button.setLabel("User chose " + mi[i].getLabel());
                button.invalidate();
                invalidate();
                button.validate();
                validate();
                break;
            }
        }
    }
    return super.action(evt, obj);
}
} // END OF Class PopTest