Index: samples/shell.cc |
diff --git a/samples/shell.cc b/samples/shell.cc |
index ad2228508439f6d14283d47bbb5b9e05519a6295..17b5767c62c8b9b5e2a53f0ad4c0921a7c6779b8 100644 |
--- a/samples/shell.cc |
+++ b/samples/shell.cc |
@@ -412,11 +412,14 @@ void ReportException(v8::Isolate* isolate, v8::TryCatch* try_catch) { |
fprintf(stderr, "^"); |
} |
fprintf(stderr, "\n"); |
- v8::String::Utf8Value stack_trace( |
- try_catch->StackTrace(context).ToLocalChecked()); |
- if (stack_trace.length() > 0) { |
- const char* stack_trace_string = ToCString(stack_trace); |
- fprintf(stderr, "%s\n", stack_trace_string); |
+ v8::Local<v8::Value> stack_trace_string; |
+ if (try_catch->StackTrace(context).ToLocal(&stack_trace_string) && |
+ stack_trace_string->IsString()) { |
+ v8::String::Utf8Value stack_trace(stack_trace_string); |
+ if (stack_trace.length() > 0) { |
vogelheim
2015/10/20 12:59:47
nitpick: Since you're checking stack_trace_string
|
+ const char* stack_trace_string = ToCString(stack_trace); |
+ fprintf(stderr, "%s\n", stack_trace_string); |
+ } |
} |
} |
} |