| Index: src/runtime/runtime-debug.cc
|
| diff --git a/src/runtime/runtime-debug.cc b/src/runtime/runtime-debug.cc
|
| index 2f91a037cc754737fa12fd5fbb12767a9a7eab4b..f409be18d6d84c1a83a550eb512ae06804fc0096 100644
|
| --- a/src/runtime/runtime-debug.cc
|
| +++ b/src/runtime/runtime-debug.cc
|
| @@ -79,8 +79,13 @@ RUNTIME_FUNCTION(Runtime_SetDebugEventListener) {
|
| CHECK(args[0]->IsJSFunction() || args[0]->IsNullOrUndefined(isolate));
|
| CONVERT_ARG_HANDLE_CHECKED(Object, callback, 0);
|
| CONVERT_ARG_HANDLE_CHECKED(Object, data, 1);
|
| - isolate->debug()->SetEventListener(callback, data);
|
| -
|
| + if (callback->IsJSFunction()) {
|
| + JavaScriptDebugDelegate* delegate = new JavaScriptDebugDelegate(
|
| + isolate, Handle<JSFunction>::cast(callback), data);
|
| + isolate->debug()->SetDebugDelegate(delegate, true);
|
| + } else {
|
| + isolate->debug()->SetDebugDelegate(nullptr, false);
|
| + }
|
| return isolate->heap()->undefined_value();
|
| }
|
|
|
| @@ -1852,7 +1857,7 @@ RUNTIME_FUNCTION(Runtime_DebugAsyncFunctionPromiseCreated) {
|
| JSObject::SetProperty(promise, async_stack_id_symbol,
|
| handle(Smi::FromInt(id), isolate), STRICT)
|
| .Assert();
|
| - isolate->debug()->OnAsyncTaskEvent(debug::kDebugEnqueueAsyncFunction, id);
|
| + isolate->debug()->OnAsyncTaskEvent(debug::kDebugEnqueueAsyncFunction, id, 0);
|
| return isolate->heap()->undefined_value();
|
| }
|
|
|
| @@ -1875,7 +1880,7 @@ RUNTIME_FUNCTION(Runtime_DebugAsyncEventEnqueueRecurring) {
|
| isolate->debug()->OnAsyncTaskEvent(
|
| status == v8::Promise::kFulfilled ? debug::kDebugEnqueuePromiseResolve
|
| : debug::kDebugEnqueuePromiseReject,
|
| - isolate->debug()->NextAsyncTaskId(promise));
|
| + isolate->debug()->NextAsyncTaskId(promise), 0);
|
| }
|
| return isolate->heap()->undefined_value();
|
| }
|
|
|