outputBuffer: avoid out-of-bounds-error in clearOutputBuffer()
I'm still not entirely certain why we index cb->metaChunkSet[] with currentChunk (and not currentMetaChunk), but shank told me that currentChunk is correct... git-svn-id: https://svn.musicpd.org/mpd/trunk@4814 09075e82-0dd4-0310-85a5-a0d7c8717e4f
This commit is contained in:
parent
64e8332fe5
commit
5ece12982a
@ -41,18 +41,18 @@ void clearOutputBuffer(OutputBuffer * cb)
|
|||||||
{
|
{
|
||||||
int currentSet = 1;
|
int currentSet = 1;
|
||||||
|
|
||||||
currentChunk = -1;
|
|
||||||
cb->end = cb->begin;
|
cb->end = cb->begin;
|
||||||
|
|
||||||
/* be sure to reset metaChunkSets cause we are skipping over audio
|
/* be sure to reset metaChunkSets cause we are skipping over audio
|
||||||
* audio chunks, and thus skipping over metadata */
|
* audio chunks, and thus skipping over metadata */
|
||||||
if (sendMetaChunk == 0 && currentMetaChunk >= 0) {
|
if (currentChunk >= 0 && sendMetaChunk == 0 && currentMetaChunk >= 0) {
|
||||||
currentSet = cb->metaChunkSet[currentChunk];
|
currentSet = cb->metaChunkSet[currentChunk];
|
||||||
}
|
}
|
||||||
clearAllMetaChunkSets(cb);
|
clearAllMetaChunkSets(cb);
|
||||||
if (sendMetaChunk == 0 && currentMetaChunk >= 0) {
|
if (currentChunk >= 0 && sendMetaChunk == 0 && currentMetaChunk >= 0) {
|
||||||
cb->metaChunkSet[currentChunk] = currentSet;
|
cb->metaChunkSet[currentChunk] = currentSet;
|
||||||
}
|
}
|
||||||
|
currentChunk = -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void flushOutputBuffer(OutputBuffer * cb)
|
void flushOutputBuffer(OutputBuffer * cb)
|
||||||
|
Loading…
Reference in New Issue
Block a user