JDK-7193463 : Terminator.setup should ignore IAE when registering signal handlers
  • Type: Bug
  • Component: core-libs
  • Sub-Component: java.lang
  • Affected Version: 7,8
  • Priority: P5
  • Status: Closed
  • Resolution: Fixed
  • OS: generic,windows_7
  • CPU: generic,x86
  • Submitted: 2012-08-23
  • Updated: 2013-06-26
  • Resolved: 2012-09-05
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 7 JDK 8
7u40Fixed 8 b55Fixed
Related Reports
Duplicate :  
Description
FULL PRODUCT VERSION :


A DESCRIPTION OF THE PROBLEM :
In java.lang.Terminator, separate signal registrations wrapped in a single try block to dedicated try block.

Current code below:
        try {
            Signal.handle(new Signal("INT"), sh);
            Signal.handle(new Signal("TERM"), sh);
        } catch (IllegalArgumentException e) {
        }
The revised code below:
        try {
            Signal.handle(new Signal("INT"), sh);
        } catch (IllegalArgumentException e) {
        }
        try {
            Signal.handle(new Signal("TERM"), sh);
        } catch (IllegalArgumentException e) {
        }
The improved version makes more sense since exception thrown from first Signal.handle call does not affect subsequent calls. This is more consistent with its original intention.

See more detailed discussion in community @
http://mail.openjdk.java.net/pipermail/core-libs-dev/2012-August/011189.html



REPRODUCIBILITY :
This bug can be reproduced always.

Comments
close it with verified in b61 as it is a trivial fix.
08-11-2012

EVALUATION http://hg.openjdk.java.net/jdk8/tl/jdk/rev/e7b53fe85540
23-08-2012