Community
Participate
Working Groups
Build ID: I20080502-0100 Steps To Reproduce: - We have some EditParts that host other Composites embedded on the page, which get disposed of when they scroll offscreen. (There are potentially a very large number of these, so we only maintain the Composite while it is on screen) - the scrollToX and scrollToY functions in FigureCanvas do something like this: Control[] children = getChildren (); iterate over children to calculate manualMove scroll (x,y,x,y,w,h,true); iterate over children again, setting bounds The issue is that during the call to scroll, paint gets called, which may trigger the disposal of the child composite. More information: I think that there's an easy fix for this, basically to just check if the control is disposed before doing anything with the widget in the second part of the function. This should not have any negative effect on existing things that use this code, and will avoid the FigureCanvas trying to do things with disposed controls. I will submit a patch to cover this scenario - we'd really like to get this patch in for 3.4...
Created attachment 101843 [details] patch for this bug patch to check for child disposal after call to scroll (which may change the disposed state)
*ping* Can this patch get into 3.4? It should be very safe and low risk. (Sorry to drag you in Randy, but we need somebody to at least look at this while it is still early enough to accept this patch...) It's an issue that basically blocks one of our features...
Committed to HEAD.