Bug 571736

Summary: [Databinding] Clearing an empty list should be a no-op
Product: [Eclipse Project] Platform Reporter: Christoph Laeubrich <laeubi>
Component: UIAssignee: Platform-UI-Inbox <Platform-UI-Inbox>
Status: NEW --- QA Contact:
Severity: normal    
Priority: P3 CC: jens
Version: 4.20   
Target Milestone: ---   
Hardware: PC   
OS: Linux   
Whiteboard:

Description Christoph Laeubrich CLA 2021-03-05 13:46:37 EST
Currently a clear() triggers a change event even if the list is empty.
For me it seem that fireListChange should check if the diff is empty and simply return in this case.

The same applies to maps, set, ... as well.

This is not only a performance problem but can easily lead to a situation of infinite loop when using SideEffects. e.g if one wants to clear the list and put some new items into it.