For "true" null objects, reset the ref itself to null. Non-null ref with null content means that the object was GC'ed. GC'ed state always behaves as not-equal to the new one, causing corresponding ops to be written into RQ.
Although I could not find practical scenarios where refs other than `validPaintRef` could cause problems, this is generally fragile and potentially problematic for any state object kept in weak ref. Therefore I changed the usage of all weak refs in the same way. ------------- Commit messages: - 8364434: Inconsistent BufferedContext state after GC Changes: https://git.openjdk.org/jdk/pull/26576/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=26576&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8364434 Stats: 37 lines in 1 file changed: 12 ins; 2 del; 23 mod Patch: https://git.openjdk.org/jdk/pull/26576.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/26576/head:pull/26576 PR: https://git.openjdk.org/jdk/pull/26576