Index: src/api.cc |
diff --git a/src/api.cc b/src/api.cc |
index 6a7c40a06c96cc3246fde4c52f4cf94657e836da..2f79e9f21e3772c8944416561360c3e60d6adef3 100644 |
--- a/src/api.cc |
+++ b/src/api.cc |
@@ -6961,6 +6961,17 @@ DEFINE_ERROR(Error) |
#undef DEFINE_ERROR |
+Local<Message> Exception::GetMessage(Handle<Value> exception) { |
+ i::Handle<i::Object> obj = Utils::OpenHandle(*exception); |
+ if (!obj->IsHeapObject()) return Local<Message>(); |
+ i::Isolate* isolate = i::HeapObject::cast(*obj)->GetIsolate(); |
+ ENTER_V8(isolate); |
+ i::HandleScope scope(isolate); |
+ return Utils::MessageToLocal( |
+ scope.CloseAndEscape(isolate->CreateMessage(obj, NULL))); |
+} |
+ |
+ |
Local<StackTrace> Exception::GetStackTrace(Handle<Value> exception) { |
i::Handle<i::Object> obj = Utils::OpenHandle(*exception); |
if (!obj->IsJSObject()) return Local<StackTrace>(); |