JDK-4132600 : exception calling Image.getWidth
  • Type: Bug
  • Component: client-libs
  • Sub-Component: 2d
  • Affected Version: 1.1.5
  • Priority: P4
  • Status: Open
  • Resolution: Unresolved
  • OS: generic
  • CPU: generic
  • Submitted: 1998-04-25
  • Updated: 2006-04-12
Related Reports
Relates :  
Description
Name: tb29552			Date: 04/24/98


I got the following exception trace
Exception occurred during event dispatching
java.lang.NullPointerException
 at java.awt.image.FilteredImageSource.startProduction(FilteredImageSource.java:126)
 at java.awt.image.FilteredImageSource.startProduction(FilteredImageSource.java:128)
 at sun.awt.image.ImageRepresentation.startProduction(ImageRepresentation.java:281)
 at sun.awt.image.Image.addWatcher(Image.java:239)
 at sun.awt.image.Image.getWidth(Image.java:132)
        at ncsa.awt.ImageButton.maxWidth(ImageButton.java:462)
        at ncsa.awt.ImageButton.buildMask(ImageButton.java:308)
        at ncsa.awt.ImageButton.<init>(ImageButton.java:266)
        at ncsa.env.presentation.IconPart.<init>(IconPart.java:149)
        at ncsa.env.presentation.UiParticipantPanel.addUiParticipantPanel(UiParticipantPanel.java:135)
        at ncsa.env.control.PacSession.addParticipant(PacSession.java:410)
        at ncsa.env.control.HabaneroEnvironment.addParticipant(HabaneroEnvironment.java:215)
        at ncsa.habanero.Session.readObject(Session.java:338)
        at java.io.ObjectInputStream.inputObject(ObjectInputStream.java:996)
        at java.io.ObjectInputStream.readObject(ObjectInputStream.java:287)
        at ncsa.habanero.streams.FilterMIStr.readObject(FilterMIStr.java:112)
        at ncsa.habanero.streams.SplitterMIStr.readObject(SplitterMIStr.java:162
)
        at ncsa.habanero.DeferredIO.readObject(DeferredIO.java:602)
        at ncsa.habanero.SessionManager.joinSession(SessionManager.java:1159)
        at ncsa.habanero.Habanero.joinSession(Habanero.java:372)
        at ncsa.env.control.PacSessionManager.joinSession(PacSessionManager.java
:842)
        at ncsa.env.control.PacSessionManager.runSession(PacSessionManager.java:
733)
        at ncsa.env.control.PacSessionManager.runSession(PacSessionManager.java:
678)
        at ncsa.env.control.PacSessionManager.callbackMenu(PacSessionManager.java:441)
        at ncsa.env.presentation.SessionEnv.action(SessionEnv.java:781)
        at ncsa.env.presentation.SessionEnv.actionPerformed(SessionEnv.java:807)
        at ncsa.awt.ImageButton.processMouseEvent(ImageButton.java:640)
        at java.awt.Component.processEvent(Component.java:2129)
        at java.awt.Component.dispatchEventImpl(Component.java:1764)
        at java.awt.Component.dispatchEvent(Component.java:1704)
        at ncsa.habanero.EventDispatchThread.dispatchEvent(EventDispatchThread.java:212)
        at ncsa.habanero.EventDispatchThread.dispatchEvent(EventDispatchThread.java:178)
        at ncsa.habanero.EventDispatchThread.run(EventDispatchThread.java:244)


(From) examining FilteredImageSource.java, line 126, it seems as though 
startProduction should be synchronized, as the proxies variable is
being clobbered halfway thru the function.

Since this is a synchronization bug in your code, I do not know
how to reproduce it.
(Review ID: 28855)
======================================================================

Comments
EVALUATION Need a test case, preferably which demonstrates the problem w/ a current release (i.e. 1.3.1 / 1.4). ###@###.### 2001-11-16
16-11-2001