--- a/src/hotspot/os/windows/os_windows.cpp Fri May 18 12:45:05 2018 -0700
+++ b/src/hotspot/os/windows/os_windows.cpp Fri May 18 15:56:42 2018 -0400
@@ -1993,7 +1993,7 @@
static volatile jint pending_signals[NSIG+1] = { 0 };
static Semaphore* sig_sem = NULL;
-void os::signal_init_pd() {
+static void jdk_misc_signal_init() {
// Initialize signal structures
memset((void*)pending_signals, 0, sizeof(pending_signals));
@@ -2014,10 +2014,8 @@
// the CTRL-BREAK thread dump mechanism is also disabled in this
// case. See bugs 4323062, 4345157, and related bugs.
- if (!ReduceSignalUsage) {
- // Add a CTRL-C handler
- SetConsoleCtrlHandler(consoleHandler, TRUE);
- }
+ // Add a CTRL-C handler
+ SetConsoleCtrlHandler(consoleHandler, TRUE);
}
void os::signal_notify(int sig) {
@@ -2025,7 +2023,7 @@
Atomic::inc(&pending_signals[sig]);
sig_sem->signal();
} else {
- // Signal thread is not created with ReduceSignalUsage and signal_init_pd
+ // Signal thread is not created with ReduceSignalUsage and jdk_misc_signal_init
// initialization isn't called.
assert(ReduceSignalUsage, "signal semaphore should be created");
}
@@ -4132,6 +4130,11 @@
SymbolEngine::recalc_search_path();
+ // Initialize data for jdk.internal.misc.Signal
+ if (!ReduceSignalUsage) {
+ jdk_misc_signal_init();
+ }
+
return JNI_OK;
}