diff --git a/io/io/src/TKey.cxx b/io/io/src/TKey.cxx index 6d0a2271523c6..2860044907e2f 100644 --- a/io/io/src/TKey.cxx +++ b/io/io/src/TKey.cxx @@ -251,7 +251,7 @@ TKey::TKey(const TObject *obj, const char *name, Int_t bufsize, TDirectory* moth ROOT::RCompressionSetting::EAlgorithm::EValues cxAlgorithm = static_cast<ROOT::RCompressionSetting::EAlgorithm::EValues>(GetFile() ? GetFile()->GetCompressionAlgorithm() : 0); if (cxlevel > 0 && fObjlen > 256) { Int_t nbuffers = 1 + (fObjlen - 1)/kMAXZIPBUF; - Int_t buflen = TMath::Max(512,fKeylen + fObjlen + 9*nbuffers + 28); //add 28 bytes in case object is placed in a deleted gap + Int_t buflen = TMath::Max(512, fKeylen + fObjlen); fBuffer = new char[buflen]; char *objbuf = fBufferRef->Buffer() + fKeylen; char *bufcur = &fBuffer[fKeylen]; @@ -343,7 +343,7 @@ TKey::TKey(const void *obj, const TClass *cl, const char *name, Int_t bufsize, T ROOT::RCompressionSetting::EAlgorithm::EValues cxAlgorithm = static_cast<ROOT::RCompressionSetting::EAlgorithm::EValues>(GetFile() ? GetFile()->GetCompressionAlgorithm() : 0); if (cxlevel > 0 && fObjlen > 256) { Int_t nbuffers = 1 + (fObjlen - 1)/kMAXZIPBUF; - Int_t buflen = TMath::Max(512,fKeylen + fObjlen + 9*nbuffers + 28); //add 28 bytes in case object is placed in a deleted gap + Int_t buflen = TMath::Max(512, fKeylen + fObjlen); fBuffer = new char[buflen]; char *objbuf = fBufferRef->Buffer() + fKeylen; char *bufcur = &fBuffer[fKeylen]; diff --git a/io/xml/src/TBufferXML.cxx b/io/xml/src/TBufferXML.cxx index 79d1938e12587..1ff0183b04930 100644 --- a/io/xml/src/TBufferXML.cxx +++ b/io/xml/src/TBufferXML.cxx @@ -403,7 +403,7 @@ void TBufferXML::XmlWriteBlock(XMLNodePointer_t node) if ((Length() > 512) && (compressionLevel > 0)) { int zipBufferSize = Length(); - fZipBuffer = new char[zipBufferSize + 9]; + fZipBuffer = new char[zipBufferSize]; int dataSize = Length(); int compressedSize = 0; R__zipMultipleAlgorithm(compressionLevel, &dataSize, Buffer(), &zipBufferSize, fZipBuffer, &compressedSize, diff --git a/net/net/src/TMessage.cxx b/net/net/src/TMessage.cxx index b555ffc993aab..f67a98247f142 100644 --- a/net/net/src/TMessage.cxx +++ b/net/net/src/TMessage.cxx @@ -362,7 +362,7 @@ Int_t TMessage::Compress() Int_t messlen = Length() - hdrlen; Int_t nbuffers = 1 + (messlen - 1) / kMAXZIPBUF; Int_t chdrlen = 3*sizeof(UInt_t); // compressed buffer header length - Int_t buflen = std::max(512, chdrlen + messlen + 9*nbuffers); + Int_t buflen = std::max(512, chdrlen + messlen); fBufComp = new char[buflen]; char *messbuf = Buffer() + hdrlen; char *bufcur = fBufComp + chdrlen; diff --git a/tree/tree/src/TBasket.cxx b/tree/tree/src/TBasket.cxx index 8f82dcdb940d7..a33a3149b69f5 100644 --- a/tree/tree/src/TBasket.cxx +++ b/tree/tree/src/TBasket.cxx @@ -1218,7 +1218,7 @@ Int_t TBasket::WriteBuffer() cxAlgorithm = static_cast<ROOT::RCompressionSetting::EAlgorithm::EValues>(file->GetCompressionAlgorithm()); if (cxlevel > 0) { Int_t nbuffers = 1 + (fObjlen - 1) / kMAXZIPBUF; - Int_t buflen = fKeylen + fObjlen + 9 * nbuffers + 28; //add 28 bytes in case object is placed in a deleted gap + Int_t buflen = fKeylen + fObjlen; InitializeCompressedBuffer(buflen, file); if (!fCompressedBufferRef) { Warning("WriteBuffer", "Unable to allocate the compressed buffer");