On Wed, 14 Feb 2024 18:09:15 GMT, Per Minborg <[email protected]> wrote:
>> This PR proposes to remove the use of `Unsafe` in the class
>> `XEmbeddingContainer ` and replace it with the supported FFM API.
>>
>> I tried to make this PR as small as possible while opening up for migration
>> of other classes later on (such as `XEmbedServer` which can be modified
>> similarly under a separate PR).
>>
>> There are also three drive-by fixes in this PR:
>> * Moved JavaDocs for `XAtom` to its proper location and fixed two typos in
>> the text
>> * Declared a field in `XEmbeddingContainer` as `private final`
>> * In `XAtom`, use a utility method `assertAtomInitialized()` instead of the
>> current duplicated code
>>
>> Tested and passed tier1-5
>
> Per Minborg has updated the pull request incrementally with one additional
> commit since the last revision:
>
> Suppress restricted warning
src/java.desktop/unix/classes/sun/awt/X11/XEmbeddingContainer.java line 150:
> 148: }
> 149: } finally {
> 150: Reference.reachabilityFence(data);
Can you explain the need for this `reachabilityFence()`? I don't understand how
`data` could become unreachable before the `Arena` is closed. Also, it's an
in-scope local variable. Thanks!
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/17846#discussion_r1498404216