From 021d6f79530d2c15b11ab1e82441cdb6713f412e Mon Sep 17 00:00:00 2001 From: Chris Jones Date: Mon, 8 Nov 2021 12:58:34 -0600 Subject: [PATCH] Fixed crash in RepeatingCachedRootSource Properly handle ProcessBlocks. --- IOPool/Input/src/RepeatingCachedRootSource.cc | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/IOPool/Input/src/RepeatingCachedRootSource.cc b/IOPool/Input/src/RepeatingCachedRootSource.cc index 56774ff90f0d3..3ffb31224b02e 100644 --- a/IOPool/Input/src/RepeatingCachedRootSource.cc +++ b/IOPool/Input/src/RepeatingCachedRootSource.cc @@ -91,6 +91,10 @@ namespace edm { bool goToEvent_(EventID const& eventID) override; void beginJob() override; + void fillProcessBlockHelper_() override; + bool nextProcessBlock_(ProcessBlockPrincipal&) override; + void readProcessBlock_(ProcessBlockPrincipal&) override; + std::unique_ptr makeRootFile(std::string const& logicalFileName, std::string const& pName, bool isSkipping, @@ -271,7 +275,7 @@ std::unique_ptr RepeatingCachedRootSource::makeRootFile( selectorRules_, InputType::Primary, branchIDListHelper(), - nullptr, + processBlockHelper().get(), thinnedAssociationsHelper(), nullptr, // associationsFromSecondary duplicateChecker, @@ -354,6 +358,16 @@ void RepeatingCachedRootSource::skip(int offset) {} bool RepeatingCachedRootSource::goToEvent_(EventID const& eventID) { return false; } +void RepeatingCachedRootSource::fillProcessBlockHelper_() { rootFile_->fillProcessBlockHelper_(); } + +bool RepeatingCachedRootSource::nextProcessBlock_(ProcessBlockPrincipal& processBlockPrincipal) { + return rootFile_->nextProcessBlock_(processBlockPrincipal); +} + +void RepeatingCachedRootSource::readProcessBlock_(ProcessBlockPrincipal& processBlockPrincipal) { + rootFile_->readProcessBlock_(processBlockPrincipal); +} + // // const member functions //