Skip to content

Debug assertion fails on Windows #18459

@tniessen

Description

@tniessen
  • Version: master
  • Platform: Windows 10 Professional x64 with VS Enterprise 2017

Debug builds fail with the following error message at runtime:

Debug Assertion Failed!

Program: F:\node\Debug\node.exe
File: C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.12.25827\include\vector
Line: 1795

Expression: vector subscript out of range

For information on how your program can cause an assertion
failure, see the Visual C++ documentation on asserts.

eeede3b seems to be the cause:

$ git bisect bad
eeede3b19c8bdb78605764eec75bea327c9014ff is the first bad commit
commit eeede3b19c8bdb78605764eec75bea327c9014ff
Author: Anatoli Papirovski <apapirovski@mac.com>
Date:   Fri Jan 19 15:42:59 2018 -0500

    domain: further abstract usage in C++

    Move the majority of C++ domain-related code into JS land by introducing
    a top level domain callback which handles entering & exiting the domain.

    Move the rest of the domain necessities into their own file that creates
    an internal binding, to avoid exposing domain-related code on the
    process object.

    Modify an existing test slightly to better test domain-related code.

    PR-URL: https://github.com/nodejs/node/pull/18291
    Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
    Reviewed-By: Anna Henningsen <anna@addaleax.net>
    Reviewed-By: James M Snell <jasnell@gmail.com>

:040000 040000 ac00216479ea70b9f02f551c2ba42b7f102d9822 c2bd6707358b1291744dab0adcd0d59b817df47c M      lib
:100644 100644 80418b3a8a6f703bef625b8927be1a46a67719a6 36efe80f7a210760c56110334f38770fdacb85cd M      node.gyp
:040000 040000 8d4c82ad33e2b6f6b5836043b96d4c7ce937de5b 470ab7f8ab07abc3dde339d15aceef553fee311c M      src
:040000 040000 e55b59be4444e446a92d1d6d779d025dda0c8f93 36ab1072b7db18c8e80e869d7e74b739498fdeeb M      test

Stack trace:

 	node.exe!std::_Debug_message(const wchar_t * message, const wchar_t * file, unsigned int line) Zeile 17
 	node.exe!std::vector<v8::Local<v8::Value>,std::allocator<v8::Local<v8::Value> > >::operator[](const unsigned __int64 _Pos) Zeile 1795
>	node.exe!node::InternalMakeCallback(node::Environment * env, v8::Local<v8::Object> recv, const v8::Local<v8::Function> callback, int argc, v8::Local<v8::Value> * argv, node::async_context asyncContext) Zeile 1005
 	node.exe!node::MakeCallback(v8::Isolate * isolate, v8::Local<v8::Object> recv, v8::Local<v8::Function> callback, int argc, v8::Local<v8::Value> * argv, node::async_context asyncContext) Zeile 1070
 	node.exe!node::Environment::CheckImmediate(uv_check_s * handle) Zeile 322
 	node.exe!uv_check_invoke(uv_loop_s * loop) Zeile 121
 	node.exe!uv_run(uv_loop_s * loop, uv_run_mode mode) Zeile 514
 	node.exe!node::Start(v8::Isolate * isolate, node::IsolateData * isolate_data, int argc, const char * const * argv, int exec_argc, const char * const * exec_argv) Zeile 4407
 	node.exe!node::Start(uv_loop_s * event_loop, int argc, const char * const * argv, int exec_argc, const char * const * exec_argv) Zeile 4476
 	node.exe!node::Start(int argc, char * * argv) Zeile 4533
 	node.exe!wmain(int argc, wchar_t * * wargv) Zeile 73

cc @apapirovski

Metadata

Metadata

Assignees

No one assigned

    Labels

    windowsIssues and PRs related to the Windows platform.

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions