Merge remote-tracking branch 'origin/stable' into dev

Change-Id: I6b92013d9fb14b11141d1a15c183776b2b3309fa
This commit is contained in:
Frederik Gladhorn
2013-03-27 14:31:37 +01:00
7 changed files with 27 additions and 14 deletions

View File

@@ -153,13 +153,15 @@ void QWaveDecoder::handleData()
chunk descriptor;
peekChunk(&descriptor);
if (source->bytesAvailable() < qint64(descriptor.size + sizeof(chunk)))
quint32 rawChunkSize = descriptor.size + sizeof(chunk);
if (source->bytesAvailable() < qint64(rawChunkSize))
return;
WAVEHeader wave;
source->read(reinterpret_cast<char *>(&wave), sizeof(WAVEHeader));
if (descriptor.size > sizeof(WAVEHeader))
discardBytes(descriptor.size - sizeof(WAVEHeader));
if (rawChunkSize > sizeof(WAVEHeader))
discardBytes(rawChunkSize - sizeof(WAVEHeader));
// Swizzle this
if (bigEndian) {