File tree Expand file tree Collapse file tree 3 files changed +20
-2
lines changed Expand file tree Collapse file tree 3 files changed +20
-2
lines changed Original file line number Diff line number Diff line change 3636
3737 # Reset this number to 0 on major V8 upgrades.
3838 # Increment by one for each non-official patch applied to deps/v8.
39- 'v8_embedder_string' : '-node.10 ' ,
39+ 'v8_embedder_string' : '-node.11 ' ,
4040
4141 ##### V8 defaults for Node.js #####
4242
Original file line number Diff line number Diff line change @@ -198,11 +198,18 @@ void MicrotaskQueueBuiltinsAssembler::RunSingleMicrotask(
198198 const TNode<Object> thenable = LoadObjectField (
199199 microtask, PromiseResolveThenableJobTask::kThenableOffset );
200200
201+ RunPromiseHook (Runtime::kPromiseHookBefore , microtask_context,
202+ CAST (promise_to_resolve));
203+
201204 {
202205 ScopedExceptionHandler handler (this , &if_exception, &var_exception);
203206 CallBuiltin (Builtins::kPromiseResolveThenableJob , native_context,
204207 promise_to_resolve, thenable, then);
205208 }
209+
210+ RunPromiseHook (Runtime::kPromiseHookAfter , microtask_context,
211+ CAST (promise_to_resolve));
212+
206213 RewindEnteredContext (saved_entered_context_count);
207214 SetCurrentContext (current_context);
208215 Goto (&done);
Original file line number Diff line number Diff line change @@ -16352,7 +16352,18 @@ TEST(PromiseHook) {
1635216352 CHECK_EQ(v8::Promise::kPending, GetPromise("p")->State());
1635316353 CompileRun("resolve(Promise.resolve(value));\n");
1635416354 CHECK_EQ(v8::Promise::kFulfilled, GetPromise("p")->State());
16355- CHECK_EQ(9, promise_hook_data->promise_hook_count);
16355+ CHECK_EQ(11, promise_hook_data->promise_hook_count);
16356+
16357+ promise_hook_data->Reset();
16358+ source =
16359+ "var p = Promise.resolve({\n"
16360+ " then(r) {\n"
16361+ " r();\n"
16362+ " }\n"
16363+ "});";
16364+ CompileRun(source);
16365+ CHECK_EQ(GetPromise("p")->State(), v8::Promise::kFulfilled);
16366+ CHECK_EQ(promise_hook_data->promise_hook_count, 5);
1635616367
1635716368 delete promise_hook_data;
1635816369 isolate->SetPromiseHook(nullptr);
You can’t perform that action at this time.
0 commit comments