diff --git a/Event/EventContainers/EventContainers/IdentifiableContTemp.h b/Event/EventContainers/EventContainers/IdentifiableContTemp.h index c213a2dc00aa4c20c2516f0d1f4b58e1397e932f..d6e528368c40dd8de75fca703ca50c1191b920e9 100644 --- a/Event/EventContainers/EventContainers/IdentifiableContTemp.h +++ b/Event/EventContainers/EventContainers/IdentifiableContTemp.h @@ -92,13 +92,15 @@ public: return StatusCode::SUCCESS; } - void MergeToRealContainer(IIdentifiableCont<T> *real){ + StatusCode MergeToRealContainer(IIdentifiableCont<T> *real){ for(auto &x : m_usedhashes){ auto ptr = std::unique_ptr<T>(const_cast<T*>( x.second)); - real->addOrDelete(std::move(ptr), x.first); + auto sc = real->addOrDelete(std::move(ptr), x.first); + if(sc.isFailure()) { return StatusCode::FAILURE; } m_randomcont[x.first] = nullptr; } m_usedhashes.clear(); + return StatusCode::SUCCESS; } virtual void cleanup() override{ diff --git a/InnerDetector/InDetEventCnv/PixelRawDataByteStreamCnv/src/PixelRawDataProvider.cxx b/InnerDetector/InDetEventCnv/PixelRawDataByteStreamCnv/src/PixelRawDataProvider.cxx index 9f04b218e14343f2612f211c950911a4ee28ba62..f7761e4012cf14444efd77c1fcb87fce441c6172 100644 --- a/InnerDetector/InDetEventCnv/PixelRawDataByteStreamCnv/src/PixelRawDataProvider.cxx +++ b/InnerDetector/InDetEventCnv/PixelRawDataByteStreamCnv/src/PixelRawDataProvider.cxx @@ -156,7 +156,7 @@ StatusCode PixelRawDataProvider::execute() { if (m_rawDataTool->convert(listOfRobf, containerInterface).isFailure()) ATH_MSG_ERROR("BS conversion into RDOs failed"); - if(tempcont) tempcont->MergeToRealContainer(rdoContainer.ptr()); + if(tempcont) ATH_CHECK(tempcont->MergeToRealContainer(rdoContainer.ptr())); #ifdef PIXEL_DEBUG ATH_MSG_DEBUG("Number of Collections in IDC " << rdoContainer->numberOfCollections()); #endif diff --git a/InnerDetector/InDetEventCnv/SCT_RawDataByteStreamCnv/src/SCTRawDataProvider.cxx b/InnerDetector/InDetEventCnv/SCT_RawDataByteStreamCnv/src/SCTRawDataProvider.cxx index e40f407790172dbb6b93766fc2bf3dd32295d663..a36265ccb648d7883124dec467775371aced6a81 100644 --- a/InnerDetector/InDetEventCnv/SCT_RawDataByteStreamCnv/src/SCTRawDataProvider.cxx +++ b/InnerDetector/InDetEventCnv/SCT_RawDataByteStreamCnv/src/SCTRawDataProvider.cxx @@ -156,7 +156,7 @@ StatusCode SCTRawDataProvider::execute() ATH_MSG_WARNING("BS conversion into RDOs failed"); } - if (dummyRDO) dummyRDO->MergeToRealContainer(rdoContainer.ptr()); + if (dummyRDO) ATH_CHECK(dummyRDO->MergeToRealContainer(rdoContainer.ptr())); return StatusCode::SUCCESS; }