Skip to content
  • commit-queue@webkit.org's avatar
    Update Exception handling in WebAudio. · ef1d84df
    commit-queue@webkit.org authored
    https://bugs.webkit.org/show_bug.cgi?id=118405.
    
    Patch by Praveen R Jadhav <praveen.j@samsung.com> on 2013-07-09
    Reviewed by Chris Rogers.
    
    Source/WebCore:
    
    AudioBufferSourceNode, OscillatorNode and AnalyserNode don't
    propagate exception mentioned in WebAudio spec.
    Code updated to throw DOM exception as expected.
    
    Tests: webaudio/analyser-exception.html
           webaudio/audiobuffersource-exception.html
    
    * Modules/webaudio/AnalyserNode.cpp:
    (WebCore::AnalyserNode::setFftSize):
    (WebCore::AnalyserNode::setMinDecibels):
    (WebCore::AnalyserNode::setMaxDecibels):
    (WebCore::AnalyserNode::setSmoothingTimeConstant):
    * Modules/webaudio/AnalyserNode.h:
    * Modules/webaudio/AnalyserNode.idl:
    * Modules/webaudio/AudioBufferSourceNode.cpp:
    (WebCore::AudioBufferSourceNode::startGrain):
    (WebCore::AudioBufferSourceNode::noteGrainOn):
    * Modules/webaudio/AudioBufferSourceNode.h:
    * Modules/webaudio/AudioBufferSourceNode.idl:
    * Modules/webaudio/AudioContext.cpp:
    (WebCore::AudioContext::createBuffer):
    (WebCore::AudioContext::createScriptProcessor):
    (WebCore::AudioContext::createPeriodicWave):
    * Modules/webaudio/AudioScheduledSourceNode.cpp:
    (WebCore::AudioScheduledSourceNode::start):
    (WebCore::AudioScheduledSourceNode::stop):
    (WebCore::AudioScheduledSourceNode::noteOn):
    (WebCore::AudioScheduledSourceNode::noteOff):
    * Modules/webaudio/AudioScheduledSourceNode.h:
    * Modules/webaudio/OscillatorNode.idl:
    
    LayoutTests:
    
    New test cases to check exception handling in AnalyserNode and
    AudioBufferSourceNode.
    
    * webaudio/analyser-exception-expected.txt: Added.
    * webaudio/analyser-exception.html: Added.
    * webaudio/audiobuffersource-exception-expected.txt: Added.
    * webaudio/audiobuffersource-exception.html: Added.
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152489 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    ef1d84df