src: init emit_env_nonstring_warning_

Currently there is no member initialiser for emit_env_nonstring_warning_
in the Environment constructor leading to undefined behaviour.
For a debug build, this memory would be initialized:
(lldb) memory read -f x -s 4 -c 1 &emit_env_nonstring_warning_
0x7fff5fbfe254: 0x00000001

But for a release build there will be no such initialization:
(lldb) memory read -f x -s 4 -c 1 `$r12 + 0x46c`
0x7fff5fbfe374: 0x00000000

This can be seen by running test-process-env-deprecation.js using
the Debug build and the Release build.

This commit adds a member initialiser for emit_env_nonstring_warning_
setting it to true.

PR-URL: https://github.com/nodejs/node/pull/19283
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
This commit is contained in:
Daniel Bevenius 2018-03-11 11:22:18 +01:00
parent 603afe25c8
commit a7e298a4a2

View File

@ -96,6 +96,7 @@ Environment::Environment(IsolateData* isolate_data,
trace_sync_io_(false),
abort_on_uncaught_exception_(false),
emit_napi_warning_(true),
emit_env_nonstring_warning_(true),
makecallback_cntr_(0),
should_abort_on_uncaught_toggle_(isolate_, 1),
#if HAVE_INSPECTOR