]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
keep the DeInit loop going if an error occured in one component
authorrichterm <richterm@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 3 Mar 2009 10:07:50 +0000 (10:07 +0000)
committerrichterm <richterm@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 3 Mar 2009 10:07:50 +0000 (10:07 +0000)
HLT/BASE/AliHLTSystem.cxx

index 31043807c30274b43f0f1c8461cb1f2f6352a12a..34a1a7d7609a8e287d34bca4289324f54bae0fbc 100644 (file)
@@ -712,11 +712,12 @@ int AliHLTSystem::DeinitTasks()
   // see header file for class documentation
   int iResult=0;
   TObjLink *lnk=fTaskList.FirstLink();
-  while (lnk && iResult>=0) {
+  while (lnk) {
     TObject* obj=lnk->GetObject();
     if (obj) {
       AliHLTTask* pTask=(AliHLTTask*)obj;
-      iResult=pTask->Deinit();
+      int localRes=pTask->Deinit();
+      if (iResult>=0) iResult=localRes;
 //       ProcInfo_t ProcInfo;
 //       gSystem->GetProcInfo(&ProcInfo);
 //       HLTInfo("task %s cleaned (%d), current memory usage %d %d", pTask->GetName(), iResult, ProcInfo.fMemResident, ProcInfo.fMemVirtual);