This change first of all simplifies an unnecessarily verbose if/else block. That part of the change affects only code readability, there is no change whatsoever to functionality at this point.
Then, if the field handles multiple values but no value has been set, the value is set to empty array. This way, if the field has one or more default values but the user chooses to deselect them, the field will not reselect the default values when the form is loaded again in the future.
There are instructions in the tracker but I guess maybe some people didn't get it.
Setup
Create a form with a checkboxes field where one or more of the boxes are checked by default.
Uncheck all boxes and save the form.
Open the form again.
Before
After saving with and empty selection, Joomla will reset the field to the default values (in which one or more boxes are checked). So there's no way to select none in this case.
There are instructions in the tracker but I guess maybe some people didn't get it.
Setup
Before
After saving with and empty selection, Joomla will reset the field to the default values (in which one or more boxes are checked). So there's no way to select none in this case.
After
You will be able to deselect all.