static variables in functions are all fun and good until you realize that they are not equivalent to class level variables when that function is a method
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6279 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -217,23 +217,17 @@ status_t
|
|||||||
OggStream::GetNextChunk(void **chunkBuffer, int32 *chunkSize,
|
OggStream::GetNextChunk(void **chunkBuffer, int32 *chunkSize,
|
||||||
media_header *mediaHeader)
|
media_header *mediaHeader)
|
||||||
{
|
{
|
||||||
static ogg_packet packet;
|
|
||||||
uint page = fEndPage;
|
|
||||||
if (fCurrentPacket - fHeaderPackets.size() == fOggFrameInfos.size()) {
|
if (fCurrentPacket - fHeaderPackets.size() == fOggFrameInfos.size()) {
|
||||||
OggFrameInfo info(fEndPage,fPacketOnEndPage,fEndPacket);
|
OggFrameInfo info(fEndPage,fPacketOnEndPage,fEndPacket);
|
||||||
fOggFrameInfos.push_back(info);
|
fOggFrameInfos.push_back(info);
|
||||||
}
|
}
|
||||||
status_t result = GetPacket(&packet);
|
status_t result = GetPacket(&fChunkPacket);
|
||||||
if (fCurrentPacket - fHeaderPackets.size() == fOggFrameInfos.size()) {
|
|
||||||
if (page != fEndPage) {
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (result != B_OK) {
|
if (result != B_OK) {
|
||||||
TRACE("OggStream::GetNextChunk failed: GetPacket = %s\n", strerror(result));
|
TRACE("OggStream::GetNextChunk failed: GetPacket = %s\n", strerror(result));
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
*chunkBuffer = &packet;
|
*chunkBuffer = &fChunkPacket;
|
||||||
*chunkSize = sizeof(packet);
|
*chunkSize = sizeof(fChunkPacket);
|
||||||
return B_OK;
|
return B_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -61,6 +61,7 @@ private:
|
|||||||
uint fPacketOnEndPage;
|
uint fPacketOnEndPage;
|
||||||
uint fEndPacket;
|
uint fEndPacket;
|
||||||
OggReader::GetPageInterface * fReaderInterface;
|
OggReader::GetPageInterface * fReaderInterface;
|
||||||
|
ogg_packet fChunkPacket;
|
||||||
};
|
};
|
||||||
|
|
||||||
} } // namespace BPrivate::media
|
} } // namespace BPrivate::media
|
||||||
|
|||||||
Reference in New Issue
Block a user