diff options
author | Ruben Bridgewater <ruben@bridgewater.de> | 2019-03-12 13:07:35 +0300 |
---|---|---|
committer | Ruben Bridgewater <ruben@bridgewater.de> | 2019-04-15 19:25:05 +0300 |
commit | 2755471bf3ce35a14cb348d4fbf0d34779426e66 (patch) | |
tree | 180775700f8aa53b52b46b86905161f373dc74b9 /src/node_errors.h | |
parent | ffd2df063c4671e006eba87a0be33357e54964a6 (diff) |
src: print error before aborting
In case of fatal errors, first print the error before aborting in
case the process should abort on uncaught exceptions.
PR-URL: https://github.com/nodejs/node/pull/26599
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Matheus Marchini <mat@mmarchini.me>
Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
Reviewed-By: Сковорода Никита Андреевич <chalkerx@gmail.com>
Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
Diffstat (limited to 'src/node_errors.h')
-rw-r--r-- | src/node_errors.h | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/src/node_errors.h b/src/node_errors.h index 4d6e1ab42d4..b04a347f1e7 100644 --- a/src/node_errors.h +++ b/src/node_errors.h @@ -14,10 +14,14 @@ namespace node { +using v8::Local; +using v8::Message; +using v8::Value; + enum ErrorHandlingMode { CONTEXTIFY_ERROR, FATAL_ERROR, MODULE_ERROR }; void AppendExceptionLine(Environment* env, - v8::Local<v8::Value> er, - v8::Local<v8::Message> message, + Local<Value> er, + Local<Message> message, enum ErrorHandlingMode mode); [[noreturn]] void FatalError(const char* location, const char* message); @@ -27,9 +31,13 @@ void PrintErrorString(const char* format, ...); void ReportException(Environment* env, const v8::TryCatch& try_catch); +void ReportException(Environment* env, + Local<Value> er, + Local<Message> message); + void FatalException(v8::Isolate* isolate, - v8::Local<v8::Value> error, - v8::Local<v8::Message> message); + Local<Value> error, + Local<Message> message); // Helpers to construct errors similar to the ones provided by // lib/internal/errors.js. |