fix: crash in gin::wrappable::secondweakcallback (#45376)
Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com> Co-authored-by: deepak1556 <hop2deep@gmail.com>
This commit is contained in:
parent
0fed0b74e0
commit
61cddcaf76
19 changed files with 233 additions and 6 deletions
|
@ -132,11 +132,16 @@ v8::Isolate* JavascriptEnvironment::GetIsolate() {
|
|||
void JavascriptEnvironment::CreateMicrotasksRunner() {
|
||||
DCHECK(!microtasks_runner_);
|
||||
microtasks_runner_ = std::make_unique<MicrotasksRunner>(isolate());
|
||||
isolate_holder_.WillCreateMicrotasksRunner();
|
||||
base::CurrentThread::Get()->AddTaskObserver(microtasks_runner_.get());
|
||||
}
|
||||
|
||||
void JavascriptEnvironment::DestroyMicrotasksRunner() {
|
||||
DCHECK(microtasks_runner_);
|
||||
// Should be called before running gin_helper::CleanedUpAtExit::DoCleanup.
|
||||
// This helps to signal wrappable finalizer callbacks to not act on freed
|
||||
// parameters.
|
||||
isolate_holder_.WillDestroyMicrotasksRunner();
|
||||
{
|
||||
v8::HandleScope scope(isolate_);
|
||||
gin_helper::CleanedUpAtExit::DoCleanup();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue