Chromium Code Reviews| Index: Source/modules/webaudio/AudioNode.cpp |
| diff --git a/Source/modules/webaudio/AudioNode.cpp b/Source/modules/webaudio/AudioNode.cpp |
| index 2c9582ee482a0e5019b5c8a889cabcc88e9627c0..7bef49006a33c1609b99284b156f89463bb1bc27 100644 |
| --- a/Source/modules/webaudio/AudioNode.cpp |
| +++ b/Source/modules/webaudio/AudioNode.cpp |
| @@ -412,11 +412,14 @@ void AudioHandler::disableOutputsIfNecessary() |
| // But internally our outputs should be disabled from the inputs they're connected to. |
| // disable() can recursively deref connections (and call disable()) down a whole chain of connected nodes. |
| - // FIXME: we special case the convolver and delay since they have a significant tail-time and shouldn't be disconnected simply |
| - // because they no longer have any input connections. This needs to be handled more generally where AudioNodes have |
| - // a tailTime attribute. Then the AudioNode only needs to remain "active" for tailTime seconds after there are no |
| - // longer any active connections. |
| - if (nodeType() != NodeTypeConvolver && nodeType() != NodeTypeDelay) { |
| + // FIXME: we special case the convolver, delay, and biquad since they have a significant |
|
hongchan
2015/08/17 20:25:40
While we're at this, it would be better for us to
Raymond Toy
2015/08/17 20:44:59
Done.
|
| + // tail-time and shouldn't be disconnected simply because they no longer have any input |
| + // connections. This needs to be handled more generally where AudioNodes have a tailTime |
| + // attribute. Then the AudioNode only needs to remain "active" for tailTime seconds after |
| + // there are no longer any active connections. |
| + if (nodeType() != NodeTypeConvolver |
| + && nodeType() != NodeTypeDelay |
| + && nodeType() != NodeTypeBiquadFilter) { |
| m_isDisabled = true; |
| clearInternalStateWhenDisabled(); |
| for (auto& output : m_outputs) |