RFR: 8283660: Convert com/sun/jndi/ldap/AbstractLdapNamingEnumeration.java finalizer to Cleaner [v8]

Brent Christian bchristi at openjdk.java.net
Fri Jun 3 21:59:40 UTC 2022


On Wed, 1 Jun 2022 21:25:25 GMT, Roger Riggs <rriggs at openjdk.org> wrote:

>> Brent Christian has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 14 commits:
>> 
>>  - Merge branch 'master' into remove-finalizers
>>  - Threading-related fixes
>>  - NOW it builds
>>  - Fix the merge fix
>>  - Fix merge
>>  - Merge
>>  - Rename inner class to EnumCtx ; use homeCtx() in AbstractLdapNamingEnumeration for consistencty ; new instance vars can be final
>>  - fix whitespace
>>  - Merge branch 'master' into remove-finalizers
>>  - Test changes to test new cleaner code
>>  - ... and 4 more: https://git.openjdk.java.net/jdk/compare/ed8e8ac2...4af66bff
>
> src/java.naming/share/classes/com/sun/jndi/ldap/AbstractLdapNamingEnumeration.java line 176:
> 
>> 174:             LdapResult newRes = homeCtx().getSearchReply(enumCtx.enumClnt, enumCtx.res);
>> 175:             enumCtx.setRes(newRes);
>> 176:             if (enumCtx.res == null) {
> 
> This looks odd, setting the value using synchronized, but reading it without.

I've added getters to EnumCtx, and a comment explaining why only setters are synchronized.

-------------

PR: https://git.openjdk.java.net/jdk/pull/8311


More information about the core-libs-dev mailing list