mirror of
https://github.com/libretro/Play-.git
synced 2025-02-15 09:07:32 +00:00
Added raw data block mode in IszImageStream.
git-svn-id: http://svn.purei.org/purei/trunk@523 b36208d7-6611-0410-8bec-b1987f11c4a2
This commit is contained in:
parent
b51b5facfd
commit
788c9d1883
@ -167,6 +167,9 @@ void CIszImageStream::SyncCache()
|
||||
case ADI_ZERO:
|
||||
ReadZeroBlock(blockDescriptor.size);
|
||||
break;
|
||||
case ADI_DATA:
|
||||
ReadDataBlock(blockDescriptor.size);
|
||||
break;
|
||||
case ADI_ZLIB:
|
||||
ReadGzipBlock(blockDescriptor.size);
|
||||
break;
|
||||
@ -188,6 +191,15 @@ void CIszImageStream::ReadZeroBlock(uint32 compressedBlockSize)
|
||||
}
|
||||
}
|
||||
|
||||
void CIszImageStream::ReadDataBlock(uint32 compressedBlockSize)
|
||||
{
|
||||
if(compressedBlockSize != m_header.blockSize)
|
||||
{
|
||||
throw runtime_error("Invalid data block.");
|
||||
}
|
||||
m_baseStream->Read(m_cachedBlock, compressedBlockSize);
|
||||
}
|
||||
|
||||
void CIszImageStream::ReadGzipBlock(uint32 compressedBlockSize)
|
||||
{
|
||||
m_baseStream->Read(m_readBuffer, compressedBlockSize);
|
||||
|
@ -75,6 +75,7 @@ private:
|
||||
void SyncCache();
|
||||
|
||||
void ReadZeroBlock(uint32);
|
||||
void ReadDataBlock(uint32);
|
||||
void ReadGzipBlock(uint32);
|
||||
void ReadBz2Block(uint32);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user