diff options
author | Anna Henningsen <anna@addaleax.net> | 2019-12-24 14:24:01 +0100 |
---|---|---|
committer | Anna Henningsen <anna@addaleax.net> | 2019-12-27 02:14:33 +0100 |
commit | 341c4daeca5054b687d8186e58e38d995191c1e1 (patch) | |
tree | a3195590e127fc97f09903c81dce9d988ecf5242 /src/node_platform.cc | |
parent | 0e89b64d6606d9c7948259e9090a46d185c5281f (diff) | |
download | node-new-341c4daeca5054b687d8186e58e38d995191c1e1.tar.gz |
src: enable stack trace printing for V8 check failures
Example output:
$ ./node --expose-gc test/addons/buffer-free-callback/test.js
#
# Fatal error in , line 0
# Check failed: result.second.
#
#
#
#FailureMessage Object: 0x7ffebd956860
1: 0x56290a45b105 [./node]
2: 0x56290b305b77 V8_Fatal(char const*, ...) [./node]
3: 0x56290a82702d v8::internal::GlobalBackingStoreRegistry::Register(std::shared_ptr<v8::internal::BackingStore>) [./node]
4: 0x56290a59a1de v8::ArrayBuffer::GetBackingStore() [./node]
5: 0x56290a3cb63f node::Buffer::New(node::Environment*, char*, unsigned long, void (*)(char*, void*), void*) [./node]
6: 0x56290a3cbcdc node::Buffer::New(v8::Isolate*, char*, unsigned long, void (*)(char*, void*), void*) [./node]
7: 0x7fdeabdfdf89 Alloc(v8::FunctionCallbackInfo<v8::Value> const&) [/home/xxxx/src/node/master/test/addons/buffer-free-callback/build/Release/binding.node]
8: 0x56290a5ca077 [./node]
9: 0x56290a5cbf97 v8::internal::Builtin_HandleApiCall(int, unsigned long*, v8::internal::Isolate*) [./node]
10: 0x56290ad99539 [./node]
Illegal instruction (core dumped)
PR-URL: https://github.com/nodejs/node/pull/31079
Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Michaƫl Zasso <targos@protonmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Gus Caplan <me@gus.host>
Reviewed-By: James M Snell <jasnell@gmail.com>
Diffstat (limited to 'src/node_platform.cc')
-rw-r--r-- | src/node_platform.cc | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/node_platform.cc b/src/node_platform.cc index 4e3a6dbc27..4be929c7ee 100644 --- a/src/node_platform.cc +++ b/src/node_platform.cc @@ -513,6 +513,14 @@ TracingController* NodePlatform::GetTracingController() { return tracing_controller_; } +Platform::StackTracePrinter NodePlatform::GetStackTracePrinter() { + return []() { + fprintf(stderr, "\n"); + DumpBacktrace(stderr); + fflush(stderr); + }; +} + template <class T> TaskQueue<T>::TaskQueue() : lock_(), tasks_available_(), tasks_drained_(), |