diff --git a/core/qa/checker/CbmQaCheckerFileHandler.cxx b/core/qa/checker/CbmQaCheckerFileHandler.cxx index 75c8d0cd97d7f53b899f36399bf06970fb27f178..93c46c396a0822ca29b3079c7b24cf966d6b0daf 100644 --- a/core/qa/checker/CbmQaCheckerFileHandler.cxx +++ b/core/qa/checker/CbmQaCheckerFileHandler.cxx @@ -160,9 +160,18 @@ void FileHandler::Process(Option_t* opt) for (int iVer = 0; iVer < nVersions; ++iVer) { if (fpObjDB->GetCmpResult(fDatasetID, fFileID, iObj, iVer)) { areDifferent = true; } } - if (areDifferent) { pObjHandler->CreateCanvases(); } + if (true || areDifferent) { pObjHandler->CreateCanvases(); } } pObjHandler->Write(); + + // Clean memory + for (auto* pObj: vpObjects) { + if (pObj) { + delete pObj; + pObj = nullptr; + } + } + } // iObj } diff --git a/core/qa/checker/CbmQaCheckerObjectHandler.cxx b/core/qa/checker/CbmQaCheckerObjectHandler.cxx index ae1f545e411db3af79e846d1eccf0ae8be2094e9..180f5e59f3d22f589ccd2c143d484f1beb9a5c4c 100644 --- a/core/qa/checker/CbmQaCheckerObjectHandler.cxx +++ b/core/qa/checker/CbmQaCheckerObjectHandler.cxx @@ -30,7 +30,15 @@ ObjectHandler::ObjectHandler(int iObject, int iFile, int iDataset, const char* o // --------------------------------------------------------------------------------------------------------------------- // -ObjectHandler::~ObjectHandler() {} +ObjectHandler::~ObjectHandler() +{ + for (auto* pObj: fvpObjects) { + if (pObj) { + delete pObj; + pObj = nullptr; + } + } +} // --------------------------------------------------------------------------------------------------------------------- //