Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'intern/audaspace/FX/AUD_DoubleReader.cpp')
-rw-r--r--intern/audaspace/FX/AUD_DoubleReader.cpp9
1 files changed, 5 insertions, 4 deletions
diff --git a/intern/audaspace/FX/AUD_DoubleReader.cpp b/intern/audaspace/FX/AUD_DoubleReader.cpp
index 8d3afbf2f1d..1e51a094427 100644
--- a/intern/audaspace/FX/AUD_DoubleReader.cpp
+++ b/intern/audaspace/FX/AUD_DoubleReader.cpp
@@ -137,15 +137,16 @@ void AUD_DoubleReader::read(int & length, sample_t* & buffer)
m_reader1->read(len, buffer);
if(len < length)
{
- int samplesize = AUD_SAMPLE_SIZE(m_reader1->getSpecs());
+ AUD_Specs specs = m_reader1->getSpecs();
+ int samplesize = AUD_SAMPLE_SIZE(specs);
if(m_buffer->getSize() < length * samplesize)
m_buffer->resize(length * samplesize);
- memcpy(m_buffer->getBuffer(), buffer, len*samplesize);
+ memcpy(m_buffer->getBuffer(), buffer, len * samplesize);
len = length - len;
length -= len;
m_reader2->read(len, buffer);
- memcpy(m_buffer->getBuffer() + length*samplesize,
- buffer, len*samplesize);
+ memcpy(m_buffer->getBuffer() + length * specs.channels, buffer,
+ len * samplesize);
length += len;
buffer = m_buffer->getBuffer();
m_finished1 = true;