Skip to content

Debug assertion fails on Windows #18459

Closed
@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

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions