Title: [238291] trunk/Source/WebCore
- Revision
- 238291
- Author
- jer.no...@apple.com
- Date
- 2018-11-16 11:06:35 -0800 (Fri, 16 Nov 2018)
Log Message
An early return from updateSchedulingInfo can leave some variables uninitialized.
https://bugs.webkit.org/show_bug.cgi?id=191755
<rdar://problem/39910089>
Reviewed by Brent Fulgham.
* Modules/webaudio/AudioBufferSourceNode.cpp:
(WebCore::AudioBufferSourceNode::process):
* Modules/webaudio/AudioScheduledSourceNode.cpp:
(WebCore::AudioScheduledSourceNode::updateSchedulingInfo):
* Modules/webaudio/OscillatorNode.cpp:
(WebCore::OscillatorNode::process):
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (238290 => 238291)
--- trunk/Source/WebCore/ChangeLog 2018-11-16 19:00:50 UTC (rev 238290)
+++ trunk/Source/WebCore/ChangeLog 2018-11-16 19:06:35 UTC (rev 238291)
@@ -1,3 +1,18 @@
+2018-11-16 Jer Noble <jer.no...@apple.com>
+
+ An early return from updateSchedulingInfo can leave some variables uninitialized.
+ https://bugs.webkit.org/show_bug.cgi?id=191755
+ <rdar://problem/39910089>
+
+ Reviewed by Brent Fulgham.
+
+ * Modules/webaudio/AudioBufferSourceNode.cpp:
+ (WebCore::AudioBufferSourceNode::process):
+ * Modules/webaudio/AudioScheduledSourceNode.cpp:
+ (WebCore::AudioScheduledSourceNode::updateSchedulingInfo):
+ * Modules/webaudio/OscillatorNode.cpp:
+ (WebCore::OscillatorNode::process):
+
2018-11-16 Alicia Boya GarcĂa <ab...@igalia.com>
[MSE][GStreamer] Ignore caps notifications when tearing down the pipeline
Modified: trunk/Source/WebCore/Modules/webaudio/AudioBufferSourceNode.cpp (238290 => 238291)
--- trunk/Source/WebCore/Modules/webaudio/AudioBufferSourceNode.cpp 2018-11-16 19:00:50 UTC (rev 238290)
+++ trunk/Source/WebCore/Modules/webaudio/AudioBufferSourceNode.cpp 2018-11-16 19:06:35 UTC (rev 238291)
@@ -111,8 +111,8 @@
return;
}
- size_t quantumFrameOffset;
- size_t bufferFramesToProcess;
+ size_t quantumFrameOffset = 0;
+ size_t bufferFramesToProcess = 0;
updateSchedulingInfo(framesToProcess, outputBus, quantumFrameOffset, bufferFramesToProcess);
if (!bufferFramesToProcess) {
Modified: trunk/Source/WebCore/Modules/webaudio/AudioScheduledSourceNode.cpp (238290 => 238291)
--- trunk/Source/WebCore/Modules/webaudio/AudioScheduledSourceNode.cpp 2018-11-16 19:00:50 UTC (rev 238290)
+++ trunk/Source/WebCore/Modules/webaudio/AudioScheduledSourceNode.cpp 2018-11-16 19:06:35 UTC (rev 238291)
@@ -53,6 +53,9 @@
void AudioScheduledSourceNode::updateSchedulingInfo(size_t quantumFrameSize, AudioBus& outputBus, size_t& quantumFrameOffset, size_t& nonSilentFramesToProcess)
{
+ nonSilentFramesToProcess = 0;
+ quantumFrameOffset = 0;
+
ASSERT(quantumFrameSize == AudioNode::ProcessingSizeInFrames);
if (quantumFrameSize != AudioNode::ProcessingSizeInFrames)
return;
@@ -75,7 +78,6 @@
if (m_playbackState == UNSCHEDULED_STATE || m_playbackState == FINISHED_STATE || startFrame >= quantumEndFrame) {
// Output silence.
outputBus.zero();
- nonSilentFramesToProcess = 0;
return;
}
Modified: trunk/Source/WebCore/Modules/webaudio/OscillatorNode.cpp (238290 => 238291)
--- trunk/Source/WebCore/Modules/webaudio/OscillatorNode.cpp 2018-11-16 19:00:50 UTC (rev 238290)
+++ trunk/Source/WebCore/Modules/webaudio/OscillatorNode.cpp 2018-11-16 19:06:35 UTC (rev 238291)
@@ -205,8 +205,8 @@
return;
}
- size_t quantumFrameOffset;
- size_t nonSilentFramesToProcess;
+ size_t quantumFrameOffset = 0;
+ size_t nonSilentFramesToProcess = 0;
updateSchedulingInfo(framesToProcess, outputBus, quantumFrameOffset, nonSilentFramesToProcess);
if (!nonSilentFramesToProcess) {
@@ -231,7 +231,7 @@
float frequency = 0;
float* higherWaveData = nullptr;
float* lowerWaveData = nullptr;
- float tableInterpolationFactor;
+ float tableInterpolationFactor = 0;
if (!hasSampleAccurateValues) {
frequency = m_frequency->smoothedValue();
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes