Please review this patch to prevent links to private and package-private 
members to be generated.
The bug happens when you link to private/package-private members, and javadoc 
used to generated links to them (assuming they were inherited because the 
holder is unreachable).

Taking the code path I changed is very rare, as it only used by 4 anchors in 4 
classes in all the JDK.

if (refSignature.trim().startsWith("#") &&
                    ! (utils.isPublic(containing) || 
utils.isLinkable(containing))


The classes that used it are `StringBuilder`/`StringBuffer` with 
`#append(java.lang.String)` and `ZipEntry`/`ZipOutputStream` with `#CENHDR`


I've expanded the test to check whether the links are created when they should 
be.

The generated documentation before and after the change are identical.

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

Commit messages:
 - javadoc no longer generates broken links to undocumented fields

Changes: https://git.openjdk.org/jdk/pull/21802/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21802&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8202617
  Stats: 116 lines in 4 files changed: 45 ins; 63 del; 8 mod
  Patch: https://git.openjdk.org/jdk/pull/21802.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/21802/head:pull/21802

PR: https://git.openjdk.org/jdk/pull/21802

Reply via email to