Changeset 267609 in webkit
- Timestamp:
- Sep 25, 2020, 5:01:58 PM (6 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 22 edited
-
ChangeLog (modified) (1 diff)
-
Modules/webaudio/AnalyserNode.cpp (modified) (1 diff)
-
Modules/webaudio/AudioBufferSourceNode.cpp (modified) (1 diff)
-
Modules/webaudio/AudioNode.cpp (modified) (1 diff)
-
Modules/webaudio/BaseAudioContext.cpp (modified) (1 diff)
-
Modules/webaudio/BiquadFilterNode.cpp (modified) (1 diff)
-
Modules/webaudio/ChannelMergerNode.cpp (modified) (1 diff)
-
Modules/webaudio/ChannelSplitterNode.cpp (modified) (1 diff)
-
Modules/webaudio/ConstantSourceNode.cpp (modified) (1 diff)
-
Modules/webaudio/ConvolverNode.cpp (modified) (1 diff)
-
Modules/webaudio/DelayNode.cpp (modified) (1 diff)
-
Modules/webaudio/DynamicsCompressorNode.cpp (modified) (1 diff)
-
Modules/webaudio/GainNode.cpp (modified) (1 diff)
-
Modules/webaudio/IIRFilterNode.cpp (modified) (1 diff)
-
Modules/webaudio/MediaElementAudioSourceNode.cpp (modified) (1 diff)
-
Modules/webaudio/MediaStreamAudioDestinationNode.cpp (modified) (1 diff)
-
Modules/webaudio/MediaStreamAudioSourceNode.cpp (modified) (1 diff)
-
Modules/webaudio/OscillatorNode.cpp (modified) (1 diff)
-
Modules/webaudio/PannerNode.cpp (modified) (1 diff)
-
Modules/webaudio/PeriodicWave.cpp (modified) (1 diff)
-
Modules/webaudio/StereoPannerNode.cpp (modified) (1 diff)
-
Modules/webaudio/WaveShaperNode.cpp (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r267605 r267609 1 2020-09-25 Chris Dumez <cdumez@apple.com> 2 3 Avoid having to call context.lazyInitialize() in every AudioNode factory function 4 https://bugs.webkit.org/show_bug.cgi?id=216989 5 6 Reviewed by Darin Adler. 7 8 Avoid having to call context.lazyInitialize() in every AudioNode factory function. 9 Replace all these calls with a single one inside the AudioNode constructor. 10 11 No new tests, no Web facing behavior change. 12 13 * Modules/webaudio/AnalyserNode.cpp: 14 (WebCore::AnalyserNode::create): 15 * Modules/webaudio/AudioBufferSourceNode.cpp: 16 (WebCore::AudioBufferSourceNode::create): 17 * Modules/webaudio/AudioNode.cpp: 18 (WebCore::AudioNode::AudioNode): 19 * Modules/webaudio/BaseAudioContext.cpp: 20 (WebCore::BaseAudioContext::lazyInitialize): 21 * Modules/webaudio/BiquadFilterNode.cpp: 22 (WebCore::BiquadFilterNode::create): 23 * Modules/webaudio/ChannelMergerNode.cpp: 24 (WebCore::ChannelMergerNode::create): 25 * Modules/webaudio/ChannelSplitterNode.cpp: 26 (WebCore::ChannelSplitterNode::create): 27 * Modules/webaudio/ConstantSourceNode.cpp: 28 (WebCore::ConstantSourceNode::create): 29 * Modules/webaudio/ConvolverNode.cpp: 30 (WebCore::ConvolverNode::create): 31 * Modules/webaudio/DelayNode.cpp: 32 (WebCore::DelayNode::create): 33 * Modules/webaudio/DynamicsCompressorNode.cpp: 34 (WebCore::DynamicsCompressorNode::create): 35 * Modules/webaudio/GainNode.cpp: 36 (WebCore::GainNode::create): 37 * Modules/webaudio/IIRFilterNode.cpp: 38 (WebCore::IIRFilterNode::create): 39 * Modules/webaudio/MediaElementAudioSourceNode.cpp: 40 (WebCore::MediaElementAudioSourceNode::create): 41 * Modules/webaudio/MediaStreamAudioDestinationNode.cpp: 42 (WebCore::MediaStreamAudioDestinationNode::create): 43 * Modules/webaudio/MediaStreamAudioSourceNode.cpp: 44 (WebCore::MediaStreamAudioSourceNode::create): 45 * Modules/webaudio/OscillatorNode.cpp: 46 (WebCore::OscillatorNode::create): 47 * Modules/webaudio/PannerNode.cpp: 48 (WebCore::PannerNode::create): 49 * Modules/webaudio/PeriodicWave.cpp: 50 (WebCore::PeriodicWave::create): 51 * Modules/webaudio/StereoPannerNode.cpp: 52 (WebCore::StereoPannerNode::create): 53 * Modules/webaudio/WaveShaperNode.cpp: 54 (WebCore::WaveShaperNode::create): 55 1 56 2020-09-25 Lauro Moura <lmoura@igalia.com> 2 57 -
trunk/Source/WebCore/Modules/webaudio/AnalyserNode.cpp
r267604 r267609 41 41 if (context.isStopped()) 42 42 return Exception { InvalidStateError }; 43 44 context.lazyInitialize();45 43 46 44 auto analyser = adoptRef(*new AnalyserNode(context)); -
trunk/Source/WebCore/Modules/webaudio/AudioBufferSourceNode.cpp
r267604 r267609 71 71 return Exception { InvalidStateError }; 72 72 73 context.lazyInitialize();74 75 73 auto node = adoptRef(*new AudioBufferSourceNode(context)); 76 74 -
trunk/Source/WebCore/Modules/webaudio/AudioNode.cpp
r267604 r267609 115 115 } 116 116 #endif 117 118 // AudioDestinationNodes are not constructed by JS and should not cause lazy initialization. 119 if (type != NodeTypeDestination) 120 context.lazyInitialize(); 117 121 } 118 122 -
trunk/Source/WebCore/Modules/webaudio/BaseAudioContext.cpp
r267591 r267609 230 230 } 231 231 } 232 232 233 m_isInitialized = true; 233 234 } -
trunk/Source/WebCore/Modules/webaudio/BiquadFilterNode.cpp
r267604 r267609 38 38 if (context.isStopped()) 39 39 return Exception { InvalidStateError }; 40 41 context.lazyInitialize();42 40 43 41 auto node = adoptRef(*new BiquadFilterNode(context)); -
trunk/Source/WebCore/Modules/webaudio/ChannelMergerNode.cpp
r267604 r267609 46 46 if (context.isStopped()) 47 47 return Exception { InvalidStateError }; 48 49 context.lazyInitialize();50 48 51 49 if (options.numberOfInputs > AudioContext::maxNumberOfChannels() || !options.numberOfInputs) -
trunk/Source/WebCore/Modules/webaudio/ChannelSplitterNode.cpp
r267604 r267609 42 42 if (context.isStopped()) 43 43 return Exception { InvalidStateError }; 44 45 context.lazyInitialize();46 44 47 45 if (options.numberOfOutputs > AudioContext::maxNumberOfChannels() || !options.numberOfOutputs) -
trunk/Source/WebCore/Modules/webaudio/ConstantSourceNode.cpp
r267604 r267609 44 44 if (context.isStopped()) 45 45 return Exception { InvalidStateError }; 46 47 context.lazyInitialize();48 46 49 47 auto node = adoptRef(*new ConstantSourceNode(context, options.offset)); -
trunk/Source/WebCore/Modules/webaudio/ConvolverNode.cpp
r267604 r267609 61 61 return Exception { InvalidStateError }; 62 62 63 context.lazyInitialize();64 65 63 auto node = adoptRef(*new ConvolverNode(context)); 66 64 -
trunk/Source/WebCore/Modules/webaudio/DelayNode.cpp
r267604 r267609 53 53 return Exception { InvalidStateError }; 54 54 55 context.lazyInitialize();56 57 55 if (options.maxDelayTime <= 0 || options.maxDelayTime >= maximumAllowedDelayTime) 58 56 return Exception { NotSupportedError }; -
trunk/Source/WebCore/Modules/webaudio/DynamicsCompressorNode.cpp
r267604 r267609 50 50 if (context.isStopped()) 51 51 return Exception { InvalidStateError }; 52 53 context.lazyInitialize();54 52 55 53 auto node = adoptRef(*new DynamicsCompressorNode(context, options)); -
trunk/Source/WebCore/Modules/webaudio/GainNode.cpp
r267604 r267609 43 43 if (context.isStopped()) 44 44 return Exception { InvalidStateError }; 45 46 context.lazyInitialize();47 45 48 46 auto gainNode = adoptRef(*new GainNode(context)); -
trunk/Source/WebCore/Modules/webaudio/IIRFilterNode.cpp
r267604 r267609 88 88 return Exception { InvalidStateError }; 89 89 90 context.lazyInitialize();91 92 90 if (!options.feedforward.size() || options.feedforward.size() > IIRFilter::maxOrder) 93 91 return Exception { NotSupportedError, "feedforward array must have a length between 1 and 20"_s }; -
trunk/Source/WebCore/Modules/webaudio/MediaElementAudioSourceNode.cpp
r267604 r267609 55 55 if (options.mediaElement->audioSourceNode()) 56 56 return Exception { InvalidStateError, "Media element is already associated with an audio source node"_s }; 57 58 context.lazyInitialize();59 57 60 58 auto node = adoptRef(*new MediaElementAudioSourceNode(context, *options.mediaElement)); -
trunk/Source/WebCore/Modules/webaudio/MediaStreamAudioDestinationNode.cpp
r267604 r267609 45 45 return Exception { InvalidStateError }; 46 46 47 context.lazyInitialize();48 49 47 auto node = adoptRef(*new MediaStreamAudioDestinationNode(context)); 50 48 -
trunk/Source/WebCore/Modules/webaudio/MediaStreamAudioSourceNode.cpp
r267604 r267609 60 60 if (!providerTrack) 61 61 return Exception { InvalidStateError, "Could not find an audio track with an audio source provider"_s }; 62 63 context.lazyInitialize();64 62 65 63 auto node = adoptRef(*new MediaStreamAudioSourceNode(context, *options.mediaStream, *providerTrack)); -
trunk/Source/WebCore/Modules/webaudio/OscillatorNode.cpp
r267604 r267609 66 66 return Exception { InvalidStateError }; 67 67 68 context.lazyInitialize();69 70 68 if (options.type == OscillatorType::Custom && !options.periodicWave) 71 69 return Exception { InvalidStateError, "Must provide periodicWave when using custom type."_s }; -
trunk/Source/WebCore/Modules/webaudio/PannerNode.cpp
r267604 r267609 61 61 return Exception { InvalidStateError }; 62 62 63 context.lazyInitialize();64 65 63 auto panner = adoptRef(*new PannerNode(context, options)); 66 64 -
trunk/Source/WebCore/Modules/webaudio/PeriodicWave.cpp
r267544 r267609 65 65 return Exception { InvalidStateError }; 66 66 67 context.lazyInitialize();68 69 67 Vector<float> real; 70 68 Vector<float> imag; -
trunk/Source/WebCore/Modules/webaudio/StereoPannerNode.cpp
r267604 r267609 44 44 if (context.isStopped()) 45 45 return Exception { InvalidStateError }; 46 47 context.lazyInitialize();48 46 49 47 auto stereo = adoptRef(*new StereoPannerNode(context, options.pan)); -
trunk/Source/WebCore/Modules/webaudio/WaveShaperNode.cpp
r267604 r267609 42 42 if (context.isStopped()) 43 43 return Exception { InvalidStateError }; 44 45 context.lazyInitialize();46 UNUSED_PARAM(options);47 44 48 45 RefPtr<Float32Array> curve;
Note:
See TracChangeset
for help on using the changeset viewer.