diff options
Diffstat (limited to 'components/script/dom/audiobuffer.rs')
-rw-r--r-- | components/script/dom/audiobuffer.rs | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/components/script/dom/audiobuffer.rs b/components/script/dom/audiobuffer.rs index 385ac2f79c3..954f36f43d3 100644 --- a/components/script/dom/audiobuffer.rs +++ b/components/script/dom/audiobuffer.rs @@ -22,7 +22,7 @@ use crate::dom::bindings::root::DomRoot; use crate::dom::globalscope::GlobalScope; use crate::dom::window::Window; use crate::realms::enter_realm; -use crate::script_runtime::JSContext; +use crate::script_runtime::{CanGc, JSContext}; // Spec mandates at least [8000, 96000], we use [8000, 192000] to match Firefox // https://webaudio.github.io/web-audio-api/#dom-baseaudiocontext-createbuffer @@ -89,6 +89,7 @@ impl AudioBuffer { length, sample_rate, initial_data, + CanGc::note(), ) } @@ -100,9 +101,10 @@ impl AudioBuffer { length: u32, sample_rate: f32, initial_data: Option<&[Vec<f32>]>, + can_gc: CanGc, ) -> DomRoot<AudioBuffer> { let buffer = AudioBuffer::new_inherited(number_of_channels, length, sample_rate); - let buffer = reflect_dom_object_with_proto(Box::new(buffer), global, proto); + let buffer = reflect_dom_object_with_proto(Box::new(buffer), global, proto, can_gc); buffer.set_initial_data(initial_data); buffer } @@ -112,6 +114,7 @@ impl AudioBuffer { pub fn Constructor( window: &Window, proto: Option<HandleObject>, + can_gc: CanGc, options: &AudioBufferOptions, ) -> Fallible<DomRoot<AudioBuffer>> { if options.length == 0 || @@ -129,6 +132,7 @@ impl AudioBuffer { options.length, *options.sampleRate, None, + can_gc, )) } |