diff --git a/src/signal_wrap.cc b/src/signal_wrap.cc index ccd1b0ec411dc8..1af98a9311f102 100644 --- a/src/signal_wrap.cc +++ b/src/signal_wrap.cc @@ -92,7 +92,8 @@ class SignalWrap : public HandleWrap { if (signum == SIGPROF) { Environment* env = Environment::GetCurrent(args); if (env->inspector_agent()->IsStarted()) { - fprintf(stderr, "process.on(SIGPROF) is reserved while debugging\n"); + ProcessEmitWarning(env, + "process.on(SIGPROF) is reserved while debugging"); return; } } diff --git a/test/parallel/test-warn-sigprof.js b/test/parallel/test-warn-sigprof.js new file mode 100644 index 00000000000000..eedbe33d84ff2a --- /dev/null +++ b/test/parallel/test-warn-sigprof.js @@ -0,0 +1,17 @@ +'use strict'; +const common = require('../common'); + +// The inspector attempts to start when Node starts. Once started, the inspector +// warns on the use of a SIGPROF listener. + +common.skipIfInspectorDisabled(); + +if (common.isWindows) { + common.skip('test does not apply to Windows'); + return; +} + +common.expectWarning('Warning', + 'process.on(SIGPROF) is reserved while debugging'); + +process.on('SIGPROF', () => {});