script: Mark callback methods with CanGc. (#35753)

Signed-off-by: Josh Matthews <josh@joshmatthews.net>
This commit is contained in:
Josh Matthews 2025-03-03 07:17:25 -05:00 committed by GitHub
parent 3d320fa96a
commit 5650fa2e79
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
26 changed files with 133 additions and 67 deletions

View file

@ -118,14 +118,18 @@ impl MicrotaskQueue {
let was_interacting = ScriptThread::is_user_interacting();
ScriptThread::set_user_interacting(job.is_user_interacting);
let _realm = enter_realm(&*target);
let _ = job.callback.Call_(&*target, ExceptionHandling::Report);
let _ = job
.callback
.Call_(&*target, ExceptionHandling::Report, can_gc);
ScriptThread::set_user_interacting(was_interacting);
}
},
Microtask::User(ref job) => {
if let Some(target) = target_provider(job.pipeline) {
let _realm = enter_realm(&*target);
let _ = job.callback.Call_(&*target, ExceptionHandling::Report);
let _ = job
.callback
.Call_(&*target, ExceptionHandling::Report, can_gc);
}
},
Microtask::MediaElement(ref task) => {