Commit 733104a0 authored by gsathya's avatar gsathya Committed by Commit bot

[promises] reset callbacks once the promise is resolved

BUG=v8:5343

Review-Url: https://codereview.chromium.org/2558493003
Cr-Commit-Position: refs/heads/master@{#41537}
parent f7f817d7
......@@ -94,10 +94,13 @@ void EnqueuePromiseReactionJob(Isolate* isolate, Handle<Object> value,
isolate->EnqueueMicrotask(info);
}
void PromiseSet(Handle<JSPromise> promise, int status, Handle<Object> result) {
void PromiseSet(Isolate* isolate, Handle<JSPromise> promise, int status,
Handle<Object> result) {
promise->set_status(status);
promise->set_result(*result);
// TODO(gsathya): reset reactions?
promise->set_deferred(isolate->heap()->undefined_value());
promise->set_fulfill_reactions(isolate->heap()->undefined_value());
promise->set_reject_reactions(isolate->heap()->undefined_value());
}
void PromiseFulfill(Isolate* isolate, Handle<JSPromise> promise,
......@@ -112,7 +115,7 @@ void PromiseFulfill(Isolate* isolate, Handle<JSPromise> promise,
EnqueuePromiseReactionJob(isolate, value, tasks, deferred, status);
}
PromiseSet(promise, status->value(), value);
PromiseSet(isolate, promise, status->value(), value);
}
} // namespace
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment