Project

General

Profile

Bug #4995

NPE in WindowManager.isDisplayed

Added by Eric Faulhaber over 3 years ago. Updated over 3 years ago.

Status:
Closed
Priority:
Low
Target version:
-
Start date:
Due date:
% Done:

100%

billable:
No
vendor_id:
GCD
case_num:

History

#1 Updated by Eric Faulhaber over 3 years ago

Recreate:

  1. log into Hotel ChUI
  2. Choose "R Rooms" menu option
  3. (U)pdate from strip menu
  4. down arrow to see drop down combo-box contents
Caused by: java.lang.NullPointerException
        at com.goldencode.p2j.ui.client.WindowManager.isDisplayed(WindowManager.java:1141)
        at com.goldencode.p2j.ui.client.widget.TitledWindow.isDisplayed(TitledWindow.java:155)
        at com.goldencode.p2j.ui.client.widget.AbstractWidget.isDisplayed(AbstractWidget.java:567)
        at com.goldencode.p2j.ui.client.widget.AbstractWidget.repaint(AbstractWidget.java:1174)
        at com.goldencode.p2j.ui.client.widget.AbstractContainer.repaint(AbstractContainer.java:1067)
        at com.goldencode.p2j.ui.client.widget.AbstractContainer.setSize(AbstractContainer.java:1264)
        at com.goldencode.p2j.ui.client.ScrollPane.setSize(ScrollPane.java:364)
        at com.goldencode.p2j.ui.client.layout.BorderLayout.fillSpace(BorderLayout.java:183)
        at com.goldencode.p2j.ui.client.layout.BorderLayout.doLayout_aroundBody0(BorderLayout.java:141)
        at com.goldencode.p2j.ui.client.layout.BorderLayout.doLayout_aroundBody1$advice(BorderLayout.java:124)
        at com.goldencode.p2j.ui.client.layout.BorderLayout.doLayout(BorderLayout.java:1)
        at com.goldencode.p2j.ui.client.widget.AbstractContainer.doLayout_aroundBody0(AbstractContainer.java:455)
        at com.goldencode.p2j.ui.client.widget.AbstractContainer.doLayout_aroundBody1$advice(AbstractContainer.java:164)
        at com.goldencode.p2j.ui.client.widget.AbstractContainer.doLayout(AbstractContainer.java:1)
        at com.goldencode.p2j.ui.client.DropDown.setHeightAndPos(DropDown.java:317)
        at com.goldencode.p2j.ui.client.DropDown.<init>(DropDown.java:147)
        at com.goldencode.p2j.ui.chui.DropDownImpl.<init>(DropDownImpl.java:85)
        at com.goldencode.p2j.ui.chui.ChuiWidgetFactory.createDropDown(ChuiWidgetFactory.java:248)
        at com.goldencode.p2j.ui.chui.ChuiWidgetFactory.createDropDown(ChuiWidgetFactory.java:124)
        at com.goldencode.p2j.ui.client.ComboBox.lambda$activate$0(ComboBox.java:1241)
        at com.goldencode.p2j.ui.chui.ThinClient.eventBracket(ThinClient.java:17178)
        at com.goldencode.p2j.ui.chui.ThinClient.eventDrawingBracket(ThinClient.java:17120)
        at com.goldencode.p2j.ui.chui.ThinClient.independentEventDrawingBracket(ThinClient.java:16982)
        at com.goldencode.p2j.ui.client.ComboBox.activate(ComboBox.java:1238)
        at com.goldencode.p2j.ui.client.ComboBox.processSystemKey(ComboBox.java:1576)
        at com.goldencode.p2j.ui.chui.ThinClient.checkForSystemEvent(ThinClient.java:16295)
        at com.goldencode.p2j.ui.chui.ThinClient.waitForEvent(ThinClient.java:16179)
        at com.goldencode.p2j.ui.chui.ThinClient.waitForWorker(ThinClient.java:13561)
        at com.goldencode.p2j.ui.chui.ThinClient.lambda$waitForWorker$61(ThinClient.java:13130)
        at com.goldencode.p2j.ui.chui.ThinClient.lambda$doInteractive$77(ThinClient.java:18156)
        at com.goldencode.p2j.ui.chui.ThinClient.doInteractive(ThinClient.java:18132)
        at com.goldencode.p2j.ui.chui.ThinClient.doInteractive(ThinClient.java:18156)
        at com.goldencode.p2j.ui.chui.ThinClient.waitForWorker(ThinClient.java:13129)
        at com.goldencode.p2j.ui.chui.ThinClient.waitFor(ThinClient.java:13072)
        at com.goldencode.p2j.ui.chui.ThinClient.promptFor(ThinClient.java:11795)
        ...

Tested with 3821c/11787. This probably is a recent regression.

#2 Updated by Eugenie Lyzenko over 3 years ago

  • % Done changed from 0 to 10

Recreated with terminal client. Debugging.

#3 Updated by Eugenie Lyzenko over 3 years ago

  • % Done changed from 10 to 90
  • Status changed from New to WIP

This was really regression from recent RoaringBitmap usage optimization. In ChUI it is not expected for drop-down to have widget ID. So need to fall back to legacy approach as last resort if window has no ID.

The issue has been fixed in 3821c rev 11791. Please update FWD and confirm whether the issue is fixed or not.

#4 Updated by Eric Faulhaber over 3 years ago

  • % Done changed from 90 to 100
  • Status changed from WIP to Review

I confirm the issue is resolved with 3821c/11791.

Constantin, since you recently have changed the code in this area, would you please review? The change is small.

#5 Updated by Constantin Asofiei over 3 years ago

I'm OK with the 3821c/11791 changes.

#6 Updated by Greg Shah over 3 years ago

  • Status changed from Review to Closed

Also available in: Atom PDF