Details
-
Bug
-
Status: Closed
-
Minor
-
Resolution: Later
-
Adobe Flex SDK 3.0 (Release)
-
None
-
None
-
Affected OS(s): Windows
Affected OS(s): Windows XP
Browser: Firefox 2.x
Language Found: English
Description
Steps to reproduce:
It is actually not reproducible outside my application
I have a tile list displayed with custom renderers, I make it unvisible, and when I switch back to visibility, I have the exception.
Tracing inside sources, the faulty method is "TileBase::createItemRenderer", line 1952 (in release Flex 3): delete freeItemRenderersByFactory[factory][renderer];
The references are bad, as the freeItemRenderersByFactory does not contain an entry corresponding to current factory, hence exception, and all the application is hanged up
The stack trace is below
Main Thread (Suspended)
mx.controls.listClasses::TileBase/createItemRenderer
mx.controls.listClasses::TileBase/http://www.adobe.com/2006/flex/mx/internal::getMeasuringRenderer
mx.controls.listClasses::TileBase/measureWidthOfItems
mx.controls.listClasses::TileBase/commitProperties
mx.core::UIComponent/validateProperties
mx.managers::LayoutManager/validateProperties
mx.managers::LayoutManager/doPhasedInstantiation
Function/http://adobe.com/AS3/2006/builtin::apply [no source]
mx.core::UIComponent/callLaterDispatcher2
mx.core::UIComponent/callLaterDispatcher
It is out of my control. To fix the bug, I had no other solution that to monkeypatch the TileBase class, and surround the faulty line with a try/catch
My project leader is not really happy with this solution, but what to do else ???