summaryrefslogtreecommitdiff
path: root/Source/WebCore/Modules/webaudio/DelayNode.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebCore/Modules/webaudio/DelayNode.cpp')
-rw-r--r--Source/WebCore/Modules/webaudio/DelayNode.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/Source/WebCore/Modules/webaudio/DelayNode.cpp b/Source/WebCore/Modules/webaudio/DelayNode.cpp
index 51cc71e8b..680c29f79 100644
--- a/Source/WebCore/Modules/webaudio/DelayNode.cpp
+++ b/Source/WebCore/Modules/webaudio/DelayNode.cpp
@@ -30,9 +30,13 @@
namespace WebCore {
+// FIXME: What should be the maximum allowed delay? Arbitrarily set to 300 sec (5 minutes).
+const double maximumAllowedDelayTime = 300;
+
DelayNode::DelayNode(AudioContext* context, float sampleRate, double maxDelayTime)
: AudioBasicProcessorNode(context, sampleRate)
{
+ maxDelayTime = std::max(std::min(maxDelayTime, maximumAllowedDelayTime), 0.0);
m_processor = adoptPtr(new DelayProcessor(context, sampleRate, 1, maxDelayTime));
setNodeType(NodeTypeDelay);
}