On Thu, 2 Nov 2023 19:05:27 GMT, Nir Lisker <[email protected]> wrote:
>> Michael Strauß has updated the pull request incrementally with one
>> additional commit since the last revision:
>>
>> changend bool comparison
>
> modules/javafx.graphics/src/main/java/com/sun/javafx/application/preferences/PlatformPreferences.java
> line 198:
>
>> 196: * @throws NullPointerException if {@code preferences} is {@code
>> null}
>> 197: */
>> 198: public void update(Map<String, Object> preferences) {
>
> I want to make sure I understand the exact details of the update rules. Is
> this correct?
>
> For each key in `preferences`:
> * if it exists in `effectivePreferences`:
> * if the values are the same, there is no change (`preferences` contains
> all mapping and not just the changes)
> * if the value in `preferences` is `null`, then this is a removal
> operation (because the value of `effectivePreferences` can't be `null`)
> * if the value in `preferences` is not `null` and not the same, then this
> is an update operation
> * if it doesn't exist in `effectivePreferences`:
> * if the value in `preferences` is not `null`, then this is an add
> operation
> * can the value in `preferences` be `null`?
That's correct.
> can the value in preferences be `null`?
It could be `null` (signalling a removal), but then that's a no-op if the key
wasn't present in `effectivePreferences`.
-------------
PR Review Comment: https://git.openjdk.org/jfx/pull/1014#discussion_r1380664150