On Wed, 23 Feb 2022 22:27:51 GMT, Marius Hanl <mh...@openjdk.org> wrote:

> This PR fixes an issue where the item of the table row is null, although the 
> cell itself is not empty (non null value).
> 
> The fix is to call `indexChanged(..)` immediately after the index was 
> changed, but before all `indexProperty()` listener are notified.
> The then notified listener in `TableRowSkinBase` will update the underlying 
> cells, which will eventually result in an call to  `updateItem(..)`, where 
> the NPE happened (and now not anymore, since the table row is now correctly 
> setup before).
> 
> There is one special case: When the index didn't changed at all, we manually 
> call `indexChanged(..)` (just like before) since when a property is not 
> changed, `invalidated()` is not called, but we need to notify subclasses that 
> `updateIndex(..)` was called.

This pull request has now been integrated.

Changeset: 222b2b11
Author:    Marius Hanl <mh...@openjdk.org>
Committer: Ajit Ghaisas <aghai...@openjdk.org>
URL:       
https://git.openjdk.org/jfx/commit/222b2b11ee58717eb355eac86ad39fffea256d00
Stats:     76 lines in 3 files changed: 67 ins; 0 del; 9 mod

8251483: TableCell: NPE on modifying item's list

Reviewed-by: aghaisas, mstrauss

-------------

PR: https://git.openjdk.org/jfx/pull/741

Reply via email to