Propagate CanGc arguments through callers in constructors (#35541)

Signed-off-by: Auguste Baum <auguste.apple@gmail.com>
This commit is contained in:
Auguste Baum 2025-02-20 17:17:45 +01:00 committed by GitHub
parent 5465bfc2af
commit 863d2ce871
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
260 changed files with 986 additions and 603 deletions

View file

@ -40,12 +40,8 @@ impl MediaDevices {
}
}
pub(crate) fn new(global: &GlobalScope) -> DomRoot<MediaDevices> {
reflect_dom_object(
Box::new(MediaDevices::new_inherited()),
global,
CanGc::note(),
)
pub(crate) fn new(global: &GlobalScope, can_gc: CanGc) -> DomRoot<MediaDevices> {
reflect_dom_object(Box::new(MediaDevices::new_inherited()), global, can_gc)
}
}
@ -63,13 +59,15 @@ impl MediaDevicesMethods<crate::DomTypeHolder> for MediaDevices {
let stream = MediaStream::new(&self.global(), can_gc);
if let Some(constraints) = convert_constraints(&constraints.audio) {
if let Some(audio) = media.create_audioinput_stream(constraints) {
let track = MediaStreamTrack::new(&self.global(), audio, MediaStreamType::Audio);
let track =
MediaStreamTrack::new(&self.global(), audio, MediaStreamType::Audio, can_gc);
stream.add_track(&track);
}
}
if let Some(constraints) = convert_constraints(&constraints.video) {
if let Some(video) = media.create_videoinput_stream(constraints) {
let track = MediaStreamTrack::new(&self.global(), video, MediaStreamType::Video);
let track =
MediaStreamTrack::new(&self.global(), video, MediaStreamType::Video, can_gc);
stream.add_track(&track);
}
}
@ -102,6 +100,7 @@ impl MediaDevicesMethods<crate::DomTypeHolder> for MediaDevices {
device.kind.convert(),
&device.label,
"",
can_gc,
)
})
.collect(),