Index: Source/modules/webaudio/AudioBufferSourceNode.cpp |
diff --git a/Source/modules/webaudio/AudioBufferSourceNode.cpp b/Source/modules/webaudio/AudioBufferSourceNode.cpp |
index 98824d94f3470554897b98e1bc44f6c61ec698ba..c2e8e9bbb9ec428c2f6b0c9ead26d254f44a353e 100644 |
--- a/Source/modules/webaudio/AudioBufferSourceNode.cpp |
+++ b/Source/modules/webaudio/AudioBufferSourceNode.cpp |
@@ -482,6 +482,10 @@ void AudioBufferSourceHandler::startSource(double when, double grainOffset, doub |
return; |
} |
+ // This synchronizes with process(). updateSchedulingInfo will read some of the variables being |
+ // set here. |
+ MutexLocker processLocker(m_processLock); |
+ |
m_isDurationGiven = isDurationGiven; |
m_isGrain = true; |
m_grainOffset = grainOffset; |