feat: add onclose method to MessagePort (#22532)
* feat: add onclose method to MessagePort * more scope, more good * de-flake GC test
This commit is contained in:
parent
829d4815a9
commit
0c02d794c9
5 changed files with 114 additions and 0 deletions
|
@ -103,6 +103,12 @@ void MessagePort::Close() {
|
|||
closed_ = true;
|
||||
if (!HasPendingActivity())
|
||||
Unpin();
|
||||
|
||||
v8::Isolate* isolate = v8::Isolate::GetCurrent();
|
||||
v8::HandleScope scope(isolate);
|
||||
v8::Local<v8::Object> self;
|
||||
if (GetWrapper(isolate).ToLocal(&self))
|
||||
gin_helper::EmitEvent(isolate, self, "close");
|
||||
}
|
||||
|
||||
void MessagePort::Entangle(mojo::ScopedMessagePipeHandle handle) {
|
||||
|
@ -196,6 +202,7 @@ void MessagePort::Pin() {
|
|||
if (!pinned_.IsEmpty())
|
||||
return;
|
||||
v8::Isolate* isolate = v8::Isolate::GetCurrent();
|
||||
v8::HandleScope scope(isolate);
|
||||
v8::Local<v8::Value> self;
|
||||
if (GetWrapper(isolate).ToLocal(&self)) {
|
||||
pinned_.Reset(isolate, self);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue