RFR: 8261938: ASN1Formatter.annotate should not return in the finally block [v3]

Roger Riggs rriggs at openjdk.java.net
Fri Feb 19 15:17:41 UTC 2021


On Fri, 19 Feb 2021 03:36:00 GMT, Jie Fu <jiefu at openjdk.org> wrote:

>> Hi all,
>> 
>> ASN1Formatter.annotate should be able to throw an IOException according to this comment [1].
>> But it fails to do so due to the return [2] in the finally block, which would swallow the IOException.
>> 
>> Generally, it seems not good to put a return statement in a finally block because it would overwrite other return-statements or Exceptions [3].
>> 
>> Thanks.
>> Best regards,
>> Jie
>> 
>> [1] https://github.com/openjdk/jdk/blob/master/test/lib/jdk/test/lib/hexdump/ASN1Formatter.java#L113
>> [2] https://github.com/openjdk/jdk/blob/master/test/lib/jdk/test/lib/hexdump/ASN1Formatter.java#L120
>> [3] https://stackoverflow.com/questions/17481251/finally-block-does-not-complete-normally-eclipse-warning
>
> Jie Fu has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Catch exception and return the accumulated string

Catching and ignoring the exception has the same behavior as handling it with finally.

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

Marked as reviewed by rriggs (Reviewer).

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


More information about the core-libs-dev mailing list