diff --git a/GenericIO.cxx b/GenericIO.cxx index bc6ccec877c72a2ef92443a8c977b7d21f3fa24c..83702c3c2cedbfbd547be1b29de5fc67f0b14fab 100644 --- a/GenericIO.cxx +++ b/GenericIO.cxx @@ -608,10 +608,11 @@ nosz: } #endif - LocalCData[i].resize(LocalCData[i].size() + OrigDataSize); + size_t RealOrigDataSize = NElems*Vars[i].Size; + LocalCData[i].resize(LocalCData[i].size() + RealOrigDataSize); if (blosc_compress(9, 1, OrigUnitSize, OrigDataSize, OrigData, &LocalCData[i][0] + sizeof(CompressHeader<IsBigEndian>), - OrigDataSize) <= 0) { + RealOrigDataSize) <= 0) { if (FreeOrigData) free(OrigData);