RFR: 8301763: Adding children to wrong index leaves inconsistent state in Parent#childrenSet
Lukasz Kostyra
lkostyra at openjdk.org
Tue May 16 07:05:50 UTC 2023
On Mon, 15 May 2023 12:49:41 GMT, Lukasz Kostyra <lkostyra at openjdk.org> wrote:
> This issue happened because `childSet` member of Parent was modified during `onProposedChange()` call - that call did not recognize negative indexes as invalid, which caused an exception when actually adding the Node to a List.
>
> This seemed like the simplest solution which doesn't rework a lot of code underneath. Exceptions coming from a backing list/collection technically are handled by `VetoableListDecorator`'s try-catch clauses, however `VetoableListDecorator` does not provide an interface to react when such an exception happens - without it we cannot revert `childSet` back to its original state.
Thanks for your notes, I was wondering if there was a better approach. I'll rework the patch.
-------------
PR Comment: https://git.openjdk.org/jfx/pull/1136#issuecomment-1549102672
More information about the openjfx-dev
mailing list