diff --git a/tree/ntuple/v7/src/RPageSinkBuf.cxx b/tree/ntuple/v7/src/RPageSinkBuf.cxx index 7aef34840482a4ecc9d1f2a26b89636b716dd389..08351518e7d38caa239e468acd514663537e2c35 100644 --- a/tree/ntuple/v7/src/RPageSinkBuf.cxx +++ b/tree/ntuple/v7/src/RPageSinkBuf.cxx @@ -105,8 +105,11 @@ ROOT::Experimental::Detail::RPageSinkBuf::CommitClusterImpl(ROOT::Experimental:: } fInnerSink->CommitSealedPageV(toCommit); - for (auto &bufColumn : fBufferedColumns) - bufColumn.DrainBufferedPages(); + for (auto &bufColumn : fBufferedColumns) { + auto drained = bufColumn.DrainBufferedPages(); + for (auto &bufPage : std::get<std::deque<RColumnBuf::RPageZipItem>>(drained)) + ReleasePage(bufPage.fPage); + } return fInnerSink->CommitCluster(nEntries); }