Clone file handle for concurrent zip access.

This commit is contained in:
OTHGMars 2021-01-11 04:49:43 -05:00
parent 64c9667bad
commit e808fc4407
2 changed files with 4 additions and 1 deletions

View file

@ -85,7 +85,7 @@ void ZipCryptRStream::setPassword(const char *password)
bool ZipCryptRStream::attachStream(Stream* io_pSlaveStream)
{
mStream = io_pSlaveStream;
mStream = io_pSlaveStream->clone();
mStreamStartPos = mStream->getPosition();
// [tom, 12/20/2005] Encrypted zip files have an extra 12 bytes

View file

@ -58,7 +58,10 @@ bool ZipSubRStream::attachStream(Stream* io_pSlaveStream)
AssertFatal(io_pSlaveStream != NULL, "NULL Slave stream?");
AssertFatal(m_pStream == NULL, "Already attached!");
m_pStream = io_pSlaveStream->clone();
if (!m_pStream)
m_pStream = io_pSlaveStream;
m_originalSlavePosition = io_pSlaveStream->getPosition();
m_uncompressedSize = 0;
m_currentPosition = 0;