Vadim Usoltsev created FLEX-34345:
-------------------------------------
Summary: Spark DataGrid throws a Null Pointer Exception when data
provider's item is being changed by item renderer.
Key: FLEX-34345
URL: https://issues.apache.org/jira/browse/FLEX-34345
Project: Apache Flex
Issue Type: Bug
Components: Spark: DataGrid, Spark: Grid
Affects Versions: Apache Flex 4.11.0, Adobe Flex SDK 4.5.1 (Release),
Apache Flex 4.12.1
Reporter: Vadim Usoltsev
Exception in GridViewLayout.as:1053 occurs when data item is being changed by
item renderer. The code:
for each (var renderer:IGridItemRenderer in visibleItemRenderers)
{
var rowIndex:int = renderer.rowIndex; ....
is not null safe, because visibleItemRenderers vector can contain null items
under some indices, made f.e. by code in GridViewLayout.as:1753 :
const renderer:IGridItemRenderer = visibleItemRenderers[index];
visibleItemRenderers[index] = null;
To reproduce this, create DataGrid with data provider, that contain items with
Date fields, and create an ItemRenderer for that column with DateField
component, that can change the date in source data item. Error will be throwed
when data item's field will be changed and PropertyChangeEvent will be
dispatched.
I think simple check for "null" will fix this bug.
--
This message was sent by Atlassian JIRA
(v6.2#6252)