Always delete TObjArrays created by TString::Tokenize (Ruben)
authorsvnbits <svnbits@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 22 Jan 2013 18:22:50 +0000 (18:22 +0000)
committersvnbits <svnbits@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 22 Jan 2013 18:22:50 +0000 (18:22 +0000)
54 files changed:
ANALYSIS/AliAnalysisAlien.cxx
ANALYSIS/AliAnalysisTaskSE.cxx
ANALYSIS/AliHEPDataParser.cxx
ANALYSIS/AliXMLCollection.cxx
ANALYSIS/EventMixing/AliAnalysisTaskMixInfo.cxx
EVE/EveBase/AliEveEventSelectorWindow.cxx
EVE/EveDet/AliEveTRDLoader.cxx
FMD/AliFMDInput.cxx
MUON/AliMUONCDB.cxx
MUON/AliMUONPainterDataSourceFrame.cxx
MUON/AliMUONTrackerIO.cxx
MUON/mapping/AliMpDDLStore.cxx
MUON/mapping/AliMpHelper.cxx
MUON/mapping/AliMpTriggerReader.cxx
OADB/AliOADBFillingScheme.cxx
PHOS/AliPHOSPreprocessor.cxx
PWG/EMCAL/AliEsdSkimTask.cxx
PWG/Tools/AliLatexTable.cxx
PWG/muon/AliAnalysisTaskFlowSingleMu.cxx
PWG/muon/AliHistogramCollection.cxx
PWG/muondep/AliAnalysisMuMu.cxx
PWG/muondep/AliAnalysisTriggerScalers.cxx
PWGCF/FEMTOSCOPY/UNICOR/AliUnicorHN.cxx
PWGDQ/dielectron/AliAnalysisTaskSingleParticle.cxx
PWGDQ/dielectron/AliDielectronHFhelper.cxx
PWGDQ/dielectron/AliDielectronVarManager.h
PWGHF/hfe/AliHFEcontainer.cxx
PWGLF/FORWARD/analysis2/AliAODForwardMult.cxx
PWGLF/FORWARD/analysis2/AliBasedNdetaTask.cxx
PWGPP/TRD/AliTRDcheckESD.cxx
RAW/AliRawReader.cxx
SHUTTLE/AliShuttleConfig.cxx
STAT/TKDPDF.cxx
STAT/TStatToolkit.cxx
STEER/CDB/AliBaseCalibViewer.cxx
STEER/ESD/AliTriggerConfiguration.cxx
STEER/STEER/AliGRPPreprocessor.cxx
STEER/STEER/AliLHCReader.cxx
STEER/STEER/AliSurveyObj.cxx
STEER/STEER/AliTriggerRunScalers.cxx
STEER/STEERBase/AliProdInfo.cxx
TOF/AliTOFAnalysisTaskCalibPass0.cxx
TPC/AliTPCCalibCE.cxx
TPC/AliTPCCalibViewer.cxx
TPC/AliTPCPreprocessorOffline.cxx
TPC/AliTPCPreprocessorOnline.cxx
TPC/AliTPCcalibDB.cxx
TPC/AliTPCcalibDButil.cxx
TPC/AliTPCkalmanAlign.cxx
TPC/AliXRDPROOFtoolkit.cxx
TRD/AliTRDReconstructor.cxx
TRD/AliTRDgtuSim.cxx
VZERO/AliVZEROCalibData.cxx
VZERO/AliVZEROTriggerData.cxx

index 57b843b..db94839 100644 (file)
@@ -3006,11 +3006,13 @@ Bool_t AliAnalysisAlien::MergeOutputs()
       merged = MergeOutput(outputFile, fGridOutputDir, fMaxMergeFiles);
       if (!merged) {
          Error("MergeOutputs", "Terminate() will  NOT be executed");
-         return kFALSE;
+        delete list;
+        return kFALSE;
       }
       TFile *fileOpened = (TFile*)gROOT->GetListOfFiles()->FindObject(outputFile);
       if (fileOpened) fileOpened->Close();
    } 
+   delete list;
    return kTRUE;
 }   
 
index 497ffa7..73d1690 100644 (file)
@@ -814,6 +814,7 @@ void AliAnalysisTaskSE::LoadBranches() const
   TIter next(arr);
   TObject *obj;
   while ((obj=next())) mgr->LoadBranch(obj->GetName());
+  delete arr;
 }
 
 
index bcb4ae6..4d41a83 100644 (file)
@@ -76,7 +76,7 @@ AliHEPDataParser::AliHEPDataParser(const char * hepfileName): TObject(), fHistSt
     TObjString * syst   = (TObjString*) tokens->At(4);
     stat->String().ReplaceAll("+-","");
     if(syst) syst->String().ReplaceAll("+-","");
-    if (!binMin->String().Atof()) continue; // skip headers
+    if (!binMin->String().Atof()) {delete tokens; continue;} // skip headers
     Float_t binCenter = (binMax->String().Atof() + binMin->String().Atof())/2;
     Float_t binWidth  =  (binMax->String().Atof() - binMin->String().Atof())/2;
     cout << line.Data() << endl;//<< " " << binMin->String().Atof() <<" " <<  binCenter << " " << binWidth << endl;
@@ -95,6 +95,7 @@ AliHEPDataParser::AliHEPDataParser(const char * hepfileName): TObject(), fHistSt
                                                             syst->String().Atof(),
                                                             syst->String().Atof());
     ipoints++;
+    delete tokens;
   }
   infile.close();
     
index 3a39bc9..31fff3e 100644 (file)
@@ -467,6 +467,7 @@ void AliXMLCollection::ParseXML() {
            TString stringevlist = oevlist->GetName();
            TObjArray *evlist = stringevlist.Tokenize(",");
            for (Int_t n = 0; n < evlist->GetEntries(); n++)  xmlevlist->Enter(atol(((TObjString *) evlist->At(n))->GetName()));
+           delete evlist;
          }
          attributes->Add(new TObjString("evlist"), xmlevlist);
        }
index 2cfcd64..1a20fe0 100644 (file)
@@ -193,6 +193,7 @@ void AliAnalysisTaskMixInfo::SetDebugForAllClasses()
       AliLog::SetClassDebugLevel(strr.Data(), fLogType);
       AliDebug(AliLog::kDebug + 5, Form("Setting Debug level %d to %s ...", (Int_t)fLogType - AliLog::kDebug, strr.Data()));
    }
+   delete array;
    AliDebug(AliLog::kDebug + 10, "->");
 }
 
index 4a42f0a..e20b63d 100644 (file)
@@ -213,6 +213,7 @@ void AliEveEventSelectorWindow::SetupTriggerSelect()
     }
     fPComboBoxTrigger->Select(0, kTRUE); //set default no filtering and emit
     fPComboBoxTrigger->SetEnabled(kTRUE);
+    delete activetrgarr;
   } 
   else
   { 
index b022787..d96a02d 100644 (file)
@@ -296,10 +296,12 @@ Bool_t AliEveTRDLoader::Open(const char *filename, const char *dir)
 
   if(((TObjString*)(*so)[0])->GetString().CompareTo("TRD") != 0){
     AliError(Form("Filename %s do not fulfill AliRoot naming conventions.", filename));
+    delete so;
     return kFALSE;
   }
   if(gSystem->AccessPathName(Form("%s/%s", dir, filename))){
     AliError(Form("Missing file %s/%s", dir, filename));
+    delete so;
     return kFALSE;
   }
   if(((TObjString*)(*so)[1])->GetString().CompareTo("Hits") == 0){
@@ -324,9 +326,10 @@ Bool_t AliEveTRDLoader::Open(const char *filename, const char *dir)
     }
   } else {
     AliError("Filename didn't fulfill naming conventions. No data will be loaded.");
+    delete so;
     return kFALSE;
   }
-
+  delete so;
   SetDataLinked();
   return kTRUE;
 }
index 89dcc90..49a60a4 100644 (file)
@@ -203,6 +203,7 @@ AliFMDInput::SetLoads(const char* what)
     ETrees type = ParseLoad(os->GetName());
     AddLoad(type);
   }
+  delete ll;
 }
     
 
index 6975198..d99eba4 100644 (file)
@@ -1883,7 +1883,7 @@ void AliMUONCDB::CheckHV(Int_t runNumber, Int_t verbose)
     
     TString name(static_cast<TObjString*>(a->At(0))->String());
     
-    if ( name.Contains("sw") || name.Contains("SUMMARY") ) continue;
+    if ( name.Contains("sw") || name.Contains("SUMMARY") ) {delete a; continue;}
     
     Int_t index = hvNamer.DCSIndexFromDCSAlias(name.Data());
     
@@ -1894,6 +1894,7 @@ void AliMUONCDB::CheckHV(Int_t runNumber, Int_t verbose)
     if (!de)
     {
       AliErrorGeneral("AliMUONCDB::CheckHV",Form("Could not get detElemId from dcsAlias %s",name.Data()));
+      delete a;
       continue;
     }
     
index 6a2c8b2..bcbd7f3 100644 (file)
@@ -689,6 +689,8 @@ AliMUONPainterDataSourceFrame::CreateRawDataSource(const TString& uri)
     emax = static_cast<TObjString*>(a->At(7))->String();
   }
   
+  delete a;
+  
   AliRawReader* rawReader = 0x0;
 
   if ( filename.Contains(TRegexp("^alien")) )
index f4dc3e2..3e8b6fe 100644 (file)
@@ -321,6 +321,7 @@ AliMUONTrackerIO::DecodeGains(const char* data, AliMUONVStore& gainStore,
           runNumber = s.Atoi();
           AliDebugClass(1,Form("runNumber is %d",runNumber));
         }            
+       delete a;
       }
       if ( sline.Contains("DAC values") )
       {
index d5c579f..b5feea3 100644 (file)
@@ -244,7 +244,8 @@ Bool_t AliMpDDLStore::ReadDDLs()
 
         if ( ! AliMpDEManager::IsValidDetElemId(idDE, false) ) {
             AliErrorStream() << "DetElemId "<< idDE << " not valid." << endl;
-            return false;
+            delete stringList;
+           return false;
         }
 
         TString busPatch = ((TObjString*)stringList->At(1))->GetString();
@@ -255,7 +256,8 @@ Bool_t AliMpDDLStore::ReadDDLs()
 
         if ( iDDL < 0 || iDDL >= fgkNofDDLs ) {
             AliErrorStream() << "DDL id "<< iDDL << " outside limits." << endl;
-            return false;
+            delete stringList;
+           return false;
         }
 
         AliDebugStream(3)
@@ -527,7 +529,8 @@ Bool_t AliMpDDLStore::ReadBusPatchSpecial()
         AliMpBusPatch* busPatch = GetBusPatch(busPatchID);
         if ( ! busPatch ) {
           AliErrorStream() << "Bus patch " << busPatchID << " does not exist." << endl;
-          return kFALSE;
+          delete stringList;
+         return kFALSE;
         }
      
         if ( sKey == GetRevertKeyword() ) {
@@ -555,7 +558,8 @@ Bool_t AliMpDDLStore::ReadBusPatchSpecial()
         }
         else {             
           AliErrorStream() << "Unrecognized key." << endl;
-          return kFALSE;
+          delete stringList;
+         return kFALSE;
         }
       }
     }
index 723d7f5..ebfa3ca 100644 (file)
@@ -77,6 +77,7 @@ AliMpHelper::Decode(const TString& s)
       m->Add(b->At(0),b->At(1));
     }
   }
+  delete a;
   return m;
 }
 
index 25d7a4f..7e12c62 100644 (file)
@@ -183,6 +183,7 @@ AliMpTriggerReader::BuildSlat(const char* slatName,
       {
         AliErrorClass(Form("Cannot read pcbType=%s",pcbName.Data()));
         delete slat;
+       delete tokens;
         return 0;
       }      
 
index a743c8b..1a61fb5 100644 (file)
@@ -102,6 +102,7 @@ void AliOADBFillingScheme::Browse(TBrowser *b)
       }
       b->Add(folder);
       delete tokIter;
+      delete tokens;
     }
     delete mapIter;    
   }     
index 78f4120..a11849e 100644 (file)
@@ -546,7 +546,7 @@ Bool_t AliPHOSPreprocessor::DoCalibrateEmc(Int_t system, TList* list, const AliP
          const Int_t md = ((TObjString*)tks->At(0))->GetString().Atoi();
          const Int_t X   = ((TObjString*)tks->At(1))->GetString().Atoi();
          const Int_t Z   = ((TObjString*)tks->At(2))->GetString().Atoi();
-
+         delete tks;
          if(badMap) {
            if(badMap->IsBadChannel(5-md,Z+1,X+1)) {
              AliInfo(Form("Cell mod=%d col=%d row=%d is bad. Histogram %s rejected.",
index c3e9be7..cf66d98 100644 (file)
@@ -295,7 +295,8 @@ void AliEsdSkimTask::UserExec(Option_t */*opt*/)
       TClonesArray *arrin  = dynamic_cast<TClonesArray*>(objsin->FindObject(cname));
       if (!arrin) {
         AliFatal(Form("Can not find input clusters with name %s", cname.Data()));
-        return;
+        delete namearr;
+       return;
       }
       TClonesArray *arrout = dynamic_cast<TClonesArray*>(objsout->FindObject(cname));
       if (!arrout) {
index 9c6b691..3861a5b 100644 (file)
@@ -341,7 +341,7 @@ Int_t * AliLatexTable::GetColWidths() {
       Int_t w = ((TObjString *) cols->At(icol))->String().Length();
       if (w>col_widths[icol]) col_widths[icol] = w;
     }
-    
+    delete cols;
   }
 
   return col_widths;
@@ -397,6 +397,7 @@ void AliLatexTable::PrintTable(Option_t * opt){
 
       }
       printf ("\n");
+      delete cols;
     }
     
     delete [] colWidths;
index cecefe5..5de1f4c 100644 (file)
@@ -961,6 +961,7 @@ void AliAnalysisTaskFlowSingleMu::Terminate(Option_t *) {
     } // loop on track sources
   } // loop on steps
 
+  delete centralityClasses;
 
   //////////////////////
   // Event statistics //
index 4e35309..a37a5e1 100644 (file)
@@ -377,7 +377,9 @@ AliHistogramCollection::Histo(const char* sidentifier) const
     action = static_cast<TObjString*>(a->At(1))->String();
     action.ToUpper();
   }
-  
+
+  delete a;
+
   Int_t nslashes = identifier.CountChar('/');
 
   TH1* h(0x0);
index 16eead9..a3a7648 100644 (file)
@@ -2533,6 +2533,7 @@ void AliAnalysisMuMu::PlotBackgroundEvolution(const char* gfile, const char* tri
   }
   
   l->Draw();
+  delete triggers;
 }
 
 //_____________________________________________________________________________
@@ -2715,6 +2716,8 @@ void AliAnalysisMuMu::TriggerCountCoverage(const char* triggerList, Bool_t compa
                total,totalExpected,totalExpected ? total*100.0/totalExpected : 0.0) << std::endl;
   
   AliLog::SetGlobalLogLevel(oldLevel);
+  delete triggers;
+  delete runs;
 }
 
 //_____________________________________________________________________________
index 0a5e1b4..828ac65 100644 (file)
@@ -467,7 +467,8 @@ void AliAnalysisTriggerScalers::IntegratedLuminosity(const char* triggerList,
       (*out) << sep << "0" << sep << "0" << sep << "0" << sep << "0" << sep << std::endl; // LHC per fill, LHC integrated, lumi tot muon , efficiency
     }
   }
-  
+  //
+  delete triggerArray;
 }
 
 //______________________________________________________________________________
@@ -547,9 +548,11 @@ TGraph* AliAnalysisTriggerScalers::PlotTriggerEvolution(const char* triggerClass
       ++color;
       ++marker;
     }
+    delete a;
     return 0x0;
   }
-  
+  delete a;
+
   std::vector<int> vx;
   std::vector<int> vex;
   std::vector<double> vy;
index 38fb824..f07fb98 100644 (file)
@@ -93,6 +93,7 @@ AliUnicorHN* AliUnicorHN::Retrieve(const char *filnam, const char *nam) {
   hist->Copy(*((TH1D*)hi));
   hi->SetName(lastnam);
   delete hist;
+  delete ar;
   return hi;
 }
 //=============================================================================
index 3d020af..823841b 100644 (file)
@@ -185,6 +185,7 @@ void AliAnalysisTaskSingleParticle::UserCreateOutputObjects()
       if(fCFVarBins[ivar][0]!='\0') {
         TObjArray* arr = fCFVarBins[ivar].Tokenize(",");
         fCFVarsNbins[ivar] = arr->GetEntries()-1;
+       delete arr;
       }
     }
     fCFVarsNbins[fCFNVars] = AliPID::kSPECIES;
@@ -219,6 +220,7 @@ void AliAnalysisTaskSingleParticle::UserCreateOutputObjects()
            }
            fCfContainer->SetBinLimits(ivar, binLims);
          }
+         delete arr;
         }
         fCfContainer->SetVarTitle(ivar, AliDielectronVarManager::GetValueName(fCFVarsEnabled[ivar]));
       }
index f7c95ca..7e37573 100644 (file)
@@ -448,12 +448,14 @@ void AliDielectronHFhelper::Print(const Option_t* /*option*/) const
   TString title       = ((TObjArray*)fArrPairType->At(0))->First()->GetTitle();
   TObjArray* binvars  = title.Tokenize(":");
   AliInfo(Form(" Number of variables:     %d",binvars->GetEntriesFast()));
+  delete binvars;
 
   TObjArray* binvars2  = title.Tokenize(":#");
   for(Int_t ivar=0; ivar<binvars2->GetEntriesFast(); ivar++) {
     if(ivar%3) continue;
     AliInfo(Form(" variable %.0f: %s",((Double_t)ivar)/3+1,binvars2->At(ivar)->GetName()));
   }
+  delete binvars2;
 
 }
 
index cf98e6d..a559f64 100644 (file)
@@ -1939,7 +1939,9 @@ inline void AliDielectronVarManager::InitTRDpidEffHistograms(const Char_t* filen
     TObjArray* arr = name.Tokenize("_");
     Bool_t isBplus = kTRUE;
     if(name.Contains("BMINUS")) isBplus = kFALSE;
-    TString centMinStr = arr->At(2)->GetName(); TString centMaxStr = arr->At(3)->GetName();
+    TString centMinStr = arr->At(2)->GetName(); 
+    TString centMaxStr = arr->At(3)->GetName();
+    delete arr;
     if(isBplus) {
       fgTRDpidEffCentRanges[idxp][2] = centMinStr.Atof();
       fgTRDpidEffCentRanges[idxp][3] = centMaxStr.Atof();
index 5469953..675d143 100644 (file)
@@ -389,6 +389,7 @@ AliCFContainer *AliHFEcontainer::MakeMergedCFContainer(const Char_t *name, const
     for(Int_t istep = 0; istep < ctemp->GetNStep(); istep++)
       cmerged->SetGrid(cstep++, new AliCFGridSparse(*ctemp->GetGrid(istep)));
   }
+  delete containers;
   return cmerged;
 }
 
index 40eeac7..a7e5f97 100644 (file)
@@ -288,7 +288,7 @@ AliAODForwardMult::MakeTriggerMask(const char* what)
       AliWarningGeneral("MakeTriggerMask", 
                        Form("Unknown trigger %s", s.Data()));
   }
-  parts->Delete();
+  delete parts;
   return trgMask;
 }
 
index 51cc171..2407298 100644 (file)
@@ -242,7 +242,8 @@ AliBasedNdetaTask::ParseNormalizationScheme(const char* what)
   TString     twhat(what);
   twhat.ToUpper();
   TObjString* opt;
-  TIter       next(twhat.Tokenize(" ,|"));
+  TObjArray* token = twhat.Tokenize(" ,|");
+  TIter       next(token);
   while ((opt = static_cast<TObjString*>(next()))) { 
     TString s(opt->GetString());
     if      (s.IsNull()) continue;
@@ -264,6 +265,7 @@ AliBasedNdetaTask::ParseNormalizationScheme(const char* what)
     if (add) scheme |= bit;
     else     scheme ^= bit;
   }
+  delete token;
   return scheme;
 }  
 //________________________________________________________________________
index 0ce6da0..31176a4 100644 (file)
@@ -485,7 +485,7 @@ void AliTRDcheckESD::UserExec(Option_t *){
   //  cout << "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++triggers fired:  " << triggerClasses.Data() << endl;
   TObjArray* triggers = triggerClasses.Tokenize(" ");
   TObjArray* userTriggers = fUserEnabledTriggers.Tokenize(";");
-  if(triggers->GetEntries()<1) return;
+  if(triggers->GetEntries()<1) {delete triggers; delete userTriggers; return;}
   Bool_t hasGoodTriggers = kFALSE;
   Int_t triggerIndices[kNMaxAssignedTriggers] = {0};
   Int_t nTrigFired=0;
@@ -510,6 +510,10 @@ void AliTRDcheckESD::UserExec(Option_t *){
   //  Int_t nTRDtracks = fESD->GetNumberOfTrdTracks();
   //  Int_t nGlobalTracks = fESD->GetNumberOfTracks();
   //cout << "TRD/All tracks: " << nTRDtracks << "/" << nGlobalTracks << endl;
+  //
+  delete triggers;
+  delete userTriggers;
+  //
   for(Int_t i=0; i<nTrigFired; ++i) 
     ((TH1F*)fHistos->At(kTriggerDefs))->Fill(triggerIndices[i]);
 
@@ -1313,6 +1317,7 @@ void AliTRDcheckESD::InitializeCFContainers() {
         // Assign an index into the trigger histogram and the CF container for this trigger
         GetTriggerIndex(arr2->At(jt)->GetName(), kTRUE);
       }
+      delete arr;
     }
   }
   // Add background triggers from PhysicsSelection
@@ -1327,6 +1332,7 @@ void AliTRDcheckESD::InitializeCFContainers() {
         // Assign an index into the trigger histogram and the CF container for this trigger
         GetTriggerIndex(arr2->At(jt)->GetName(), kTRUE);
       }
+      delete arr;
     }
   }
     
@@ -1335,6 +1341,7 @@ void AliTRDcheckESD::InitializeCFContainers() {
   for(Int_t it=0; it<arr->GetEntries(); ++it) {
     GetTriggerIndex(arr->At(it)->GetName(), kTRUE);
   }
+  delete arr;
 }
 
 
@@ -1499,6 +1506,7 @@ AliCFContainer* AliTRDcheckESD::CreateCFContainer(const Char_t* name, const Char
        TObjArray* arr = fExpertCFVarBins[ivar].Tokenize(";");
        nBins[nVars] = arr->GetEntries()-1;
        if(nBins[nVars]>0) nVars++;
+       delete arr;
       }
     }
     if(nVars<1) return 0x0;
@@ -1520,6 +1528,7 @@ AliCFContainer* AliTRDcheckESD::CreateCFContainer(const Char_t* name, const Char
          }
          cf->SetBinLimits(iUsedVar++, binLims);
        }
+       delete arr;
       }
       cf->SetVarTitle(iUsedVar, varNames[ivar]);
     }
index d951d6f..a6a6d1f 100644 (file)
@@ -246,7 +246,7 @@ AliRawReader* AliRawReader::Create(const char *uri)
     }
     else {
       AliErrorClass(Form("Invalid syntax: %s",fileURI.Data()));
-      fields->Delete();
+      delete fields;
       return NULL;
     }
   }
@@ -265,7 +265,6 @@ AliRawReader* AliRawReader::Create(const char *uri)
   if (!rawReader->IsRawReaderValid()) {
     AliErrorClass(Form("Raw-reader is invalid - check the input URI (%s)",fileURI.Data()));
     delete rawReader;
-    fields->Delete();
     delete fields;
     return NULL;
   }
@@ -300,7 +299,6 @@ AliRawReader* AliRawReader::Create(const char *uri)
     rawReader->SelectEvents(eventType,triggerMask,triggerExpr.Data());
   }
 
-  fields->Delete();
   delete fields;
 
   return rawReader;
index 2d24ca2..c8d4465 100644 (file)
@@ -1343,6 +1343,7 @@ UInt_t AliShuttleConfig::SetPasswords(){
                TObjArray *tokens = line.Tokenize(" \t");
                TString system = ((TObjString *)tokens->At(0))->String(); 
                TString password = ((TObjString *)tokens->At(1))->String();
+               delete tokens;
                if (system.Contains("DAQ_LB")){
                        fDAQlbPass=password;
                        nPwd++;
@@ -1373,7 +1374,6 @@ UInt_t AliShuttleConfig::SetPasswords(){
                        AliDebug(3,Form("%i fake line(s) found in file %s", nPwdFake, fPasswdFilePath.Data()));
                        continue;
                }
-               delete tokens;
        }
 
        inputfile->close();
index c99d1c2..f1fdfd8 100644 (file)
@@ -72,6 +72,7 @@ TKDPDF::TKDPDF(TTree *t, const Char_t *var, const Char_t *cut, UInt_t bsize, Lon
     for(int ip=0; ip<fNPoints; ip++) fData[idim][ip] = (Float_t)v[ip];
   }
   Build();
+  delete vars;
 }
 
 //_________________________________________________________________
index 7e00c3b..2ea78cb 100644 (file)
@@ -756,6 +756,7 @@ TString* TStatToolkit::FitPlane(TTree *tree, const char* drawCommand, const char
      TObjArray* valTokens = strVal.Tokenize(":");
      drawStr = valTokens->At(0)->GetName();
      ferr       = valTokens->At(1)->GetName();     
+     delete valTokens;
    }
 
       
@@ -771,12 +772,16 @@ TString* TStatToolkit::FitPlane(TTree *tree, const char* drawCommand, const char
    fitter->ClearPoints();
    
    Int_t entries = tree->Draw(drawStr.Data(), cutStr.Data(), "goff",  stop-start, start);
-   if (entries == -1) return new TString("An ERROR has occured during fitting!");
+   if (entries == -1) {
+     delete formulaTokens;
+     return new TString("An ERROR has occured during fitting!");
+   }
    Double_t **values = new Double_t*[dim+1] ;
    for (Int_t i=0; i<dim+1; i++) values[i]=NULL; 
    //
    entries = tree->Draw(ferr.Data(), cutStr.Data(), "goff",  stop-start, start);
    if (entries == -1) {
+     delete formulaTokens;
      delete []values;
      return new TString("An ERROR has occured during fitting!");
    }
@@ -853,6 +858,7 @@ TString* TStatToolkit::FitPlaneConstrain(TTree *tree, const char* drawCommand, c
      TObjArray* valTokens = strVal.Tokenize(":");
      drawStr = valTokens->At(0)->GetName();
      ferr       = valTokens->At(1)->GetName();     
+     delete valTokens;
    }
 
       
@@ -868,12 +874,16 @@ TString* TStatToolkit::FitPlaneConstrain(TTree *tree, const char* drawCommand, c
    fitter->ClearPoints();
    
    Int_t entries = tree->Draw(drawStr.Data(), cutStr.Data(), "goff",  stop-start, start);
-   if (entries == -1) return new TString("An ERROR has occured during fitting!");
+   if (entries == -1) {
+     delete formulaTokens;
+     return new TString("An ERROR has occured during fitting!");
+   }
    Double_t **values = new Double_t*[dim+1] ; 
    for (Int_t i=0; i<dim+1; i++) values[i]=NULL; 
    //
    entries = tree->Draw(ferr.Data(), cutStr.Data(), "goff",  stop-start, start);
    if (entries == -1) {
+     delete formulaTokens;
      delete [] values;
      return new TString("An ERROR has occured during fitting!");
    }
@@ -888,6 +898,7 @@ TString* TStatToolkit::FitPlaneConstrain(TTree *tree, const char* drawCommand, c
       if (entries != centries) {
        delete []errors;
        delete []values;
+       delete formulaTokens;
        return new TString("An ERROR has occured during fitting!");
       }
       values[i] = new Double_t[entries];
@@ -956,7 +967,8 @@ TString* TStatToolkit::FitPlaneFixed(TTree *tree, const char* drawCommand, const
    if (strVal.Contains(":")){
      TObjArray* valTokens = strVal.Tokenize(":");
      drawStr = valTokens->At(0)->GetName();
-     ferr       = valTokens->At(1)->GetName();     
+     ferr       = valTokens->At(1)->GetName();
+     delete valTokens;
    }
 
       
@@ -973,13 +985,17 @@ TString* TStatToolkit::FitPlaneFixed(TTree *tree, const char* drawCommand, const
    fitter->ClearPoints();
    
    Int_t entries = tree->Draw(drawStr.Data(), cutStr.Data(), "goff",  stop-start, start);
-   if (entries == -1) return new TString("An ERROR has occured during fitting!");
+   if (entries == -1) {
+     delete formulaTokens;
+     return new TString("An ERROR has occured during fitting!");
+   }
    Double_t **values = new Double_t*[dim+1] ; 
    for (Int_t i=0; i<dim+1; i++) values[i]=NULL; 
    //
    entries = tree->Draw(ferr.Data(), cutStr.Data(), "goff",  stop-start, start);
    if (entries == -1) {
      delete []values;
+     delete formulaTokens;
      return new TString("An ERROR has occured during fitting!");
    }
    Double_t *errors = new Double_t[entries];
@@ -993,6 +1009,7 @@ TString* TStatToolkit::FitPlaneFixed(TTree *tree, const char* drawCommand, const
       if (entries != centries) {
        delete []errors;
        delete []values;
+       delete formulaTokens;
        return new TString("An ERROR has occured during fitting!");
       }
       values[i] = new Double_t[entries];
@@ -1055,6 +1072,8 @@ Int_t TStatToolkit::GetFitIndex(const TString fString, const TString subString){
     }
     if (isOK) index=i;
   }
+  delete arrFit;
+  delete arrSub;
   return index;
 }
 
@@ -1080,6 +1099,8 @@ TString  TStatToolkit::FilterFit(const TString &input, const TString filter, TVe
     }
   }
   result+="-0.)";
+  delete array0;
+  delete array1;
   return result;
 }
 
@@ -1167,6 +1188,8 @@ void   TStatToolkit::Constrain1D(const TString &input, const TString filter, TVe
   for (Int_t i=0; i<=array0->GetEntries(); i++){
     param(i)=paramM(i,0);
   }
+  delete array0;
+  delete array1;
 }
 
 TString  TStatToolkit::MakeFitString(const TString &input, const TVectorD &param, const TMatrixD & covar, Bool_t verbose){
@@ -1183,6 +1206,7 @@ TString  TStatToolkit::MakeFitString(const TString &input, const TVectorD &param
     if (verbose) printf("%f\t%f\t%s\n", param[i+1], TMath::Sqrt(covar(i+1,i+1)),str.Data());    
   }
   result+="-0.)";
+  delete array0;
   return result;
 }
 
index 231d3bc..c70114a 100644 (file)
@@ -247,6 +247,7 @@ TString* AliBaseCalibViewer::Fit(const Char_t* drawCommand, const Char_t* formul
    Int_t entries = Draw(drawStr.Data(), cutStr.Data(), "goff");
    if (entries == -1) {
      delete fitter;
+     delete formulaTokens;
      return new TString("An ERROR has occured during fitting!");
    }
    Double_t **values = new Double_t*[dim+1] ; 
@@ -259,6 +260,7 @@ TString* AliBaseCalibViewer::Fit(const Char_t* drawCommand, const Char_t* formul
       if (entries != centries) {
        delete fitter;
        delete [] values;
+       delete formulaTokens;
        return new TString("An ERROR has occured during fitting!");
       }
       values[i] = new Double_t[entries];
@@ -485,7 +487,8 @@ Int_t  AliBaseCalibViewer::DrawHisto1D(const Char_t* drawCommand, const Char_t*
     Double_t sig = (str.IsFloat()) ? str.Atof() : 0;
     nsigma[i] = sig;
   }
-  
+  delete sigmasTokens;
+  //
   TString drawStr(drawCommand);
   Bool_t dangerousToDraw = drawStr.Contains(":") || drawStr.Contains(">>");
   if (dangerousToDraw) {
@@ -632,7 +635,8 @@ Int_t AliBaseCalibViewer::SigmaCut(const Char_t* drawCommand, const Char_t* sect
       Double_t sig = (str.IsFloat()) ? str.Atof() : 0;
       nsigma[i] = sig;
    }
-  
+   delete sigmasTokens;
+   //
    if (plotMean) {
       cutHistoMean = SigmaCut(htemp, mean, sigma, sigmaMax, sigmaStep, pm);
       if (cutHistoMean) {
@@ -725,7 +729,7 @@ Int_t AliBaseCalibViewer::Integrate(const Char_t* drawCommand, const Char_t* sec
       Double_t sig = (str.IsFloat()) ? str.Atof() : 0;
       nsigma[i] = sig;
    }
-  
+   delete sigmasTokens;
    TLegend * legend = new TLegend(.7,.7, .99, .99, "Integrated histogram");
    //fListOfObjectsToBeDeleted->Add(legend);
   
index 901cf92..3f4094d 100755 (executable)
@@ -342,6 +342,7 @@ TString AliTriggerConfiguration::GetActiveDetectors() const
          activeDet.Append( " " );
          activeDet.Append( ((TObjString*)det->At(k))->String() );
       }
+      delete det;
    }
    return activeDet;
 }
@@ -564,6 +565,7 @@ Bool_t AliTriggerConfiguration::ProcessConfigurationLine(const char* line, Int_t
        // Read inputs
        if (ntokens != 5) {
         AliError(Form("Invalid trigger input syntax (%s)!",strLine.Data()));
+        delete tokens;
         return kFALSE;
        }
        AddInput(((TObjString*)tokens->At(0))->String(),
@@ -576,6 +578,7 @@ Bool_t AliTriggerConfiguration::ProcessConfigurationLine(const char* line, Int_t
        // Read interaction
        if (ntokens != 2) {
         AliError(Form("Invalid trigger interaction syntax (%s)!",strLine.Data()));
+        delete tokens;
         return kFALSE;
        }
        AddInteraction(((TObjString*)tokens->At(0))->String(),
@@ -593,24 +596,32 @@ Bool_t AliTriggerConfiguration::ProcessConfigurationLine(const char* line, Int_t
         }
         else {
           AliError(Form("Invalid trigger descriptor syntax (%s)!",strLine.Data()));
+          delete tokens;
           return kFALSE;
         }
        }
        if (((TObjString*)tokens->At(0))->String().BeginsWith("l0f")) {
         // function
         if(!AddFunction(((TObjString*)tokens->At(0))->String(),
-                         strLine.ReplaceAll(((TObjString*)tokens->At(0))->String(),""))) return kFALSE;
+                        strLine.ReplaceAll(((TObjString*)tokens->At(0))->String(),""))) {
+          delete tokens;
+          return kFALSE;
+        }
        }
        else {
         if(!AddDescriptor(((TObjString*)tokens->At(0))->String(),
-                           strLine.ReplaceAll(((TObjString*)tokens->At(0))->String(),""))) return kFALSE;
+                          strLine.ReplaceAll(((TObjString*)tokens->At(0))->String(),""))) {
+          delete tokens;
+          return kFALSE;
+        }
        }
        break;
      case 4:
        {
          if (ntokens < 2) {
            AliError(Form("Invalid trigger cluster syntax (%s)!",strLine.Data()));
-           return kFALSE;
+          delete tokens;
+          return kFALSE;
          }
         if (((TObjString*)tokens->At(1))->String().Atoi() <= 0) {
            AliError(Form("Invalid trigger cluster syntax (%s)!",strLine.Data()));
@@ -676,20 +687,28 @@ Bool_t AliTriggerConfiguration::ProcessConfigurationLine(const char* line, Int_t
      case 6:
          if (ntokens > 2) {
           AliError(Form("Invalid trigger bcmasks syntax (%s)!",strLine.Data()));
+          delete tokens;
           return kFALSE;
          }
        if (((TObjString*)tokens->At(0))->String().CompareTo("NONE") == 0)
        {        
-         if(!AddMask(new AliTriggerBCMask(((TObjString*)tokens->At(0))->String()))) return kFALSE;
+         if(!AddMask(new AliTriggerBCMask(((TObjString*)tokens->At(0))->String()))) {
+          delete tokens;
+          return kFALSE;
+        }
        }
        else {
-        if(!AddMask(((TObjString*)tokens->At(0))->String(),((TObjString*)tokens->At(1))->String())) return kFALSE;
+        if(!AddMask(((TObjString*)tokens->At(0))->String(),((TObjString*)tokens->At(1))->String())) {
+          delete tokens;
+          return kFALSE;
+        }
        }
        break;
      case 7:
        {
          if ((ntokens !=8) && (ntokens != 10) && (ntokens != 11)) {
           AliError(Form("Invalid trigger class syntax (%s)!",strLine.Data()));
+          delete tokens;
           return kFALSE;
          }
         AliTriggerClass *trclass=0;
@@ -704,8 +723,11 @@ Bool_t AliTriggerConfiguration::ProcessConfigurationLine(const char* line, Int_t
                        ((TObjString*)tokens->At(4))->String(),
                        ((TObjString*)tokens->At(6))->String().Atoi(),(Bool_t)(((TObjString*)tokens->At(7))->String().Atoi()),
                        (((TObjString*)tokens->At(8))->String().Atoi()),(((TObjString*)tokens->At(9))->String().Atoi()));
-               if(!trclass->SetMasks(this,((TObjString*)tokens->At(5))->String())) return kFALSE;
-         }
+          if(!trclass->SetMasks(this,((TObjString*)tokens->At(5))->String())) {
+            delete tokens;
+            return kFALSE;
+          }
+        }
          AddClass(trclass);
        }
      default:
index dc63241..3bdb08b 100644 (file)
@@ -1844,6 +1844,7 @@ THashList* AliGRPPreprocessor::ProcessAliases(const char* aliasesFile)
                TObjArray* arr = strLine.Tokenize(' ');
                if(arr->GetEntries() != 2){
                        Printf("The line:\n%s\nunexpectedly contains %d tokens, instead of two.",strLine.Data(),arr->GetEntries());
+                       delete arr;
                        return 0;
                }
                TObjString *osTC = (TObjString*) arr->At(0);
index 2bb1275..70f0016 100644 (file)
@@ -105,10 +105,11 @@ TMap* AliLHCReader::ReadLHCDP(TString filename)
                //
                AliDebug(3,Form("Number of tokens = %d",ntokens));
                if (ntokens == 2 && !(((TObjString*)tokens->At(0))->String()).CompareTo("LHC_ENTRIES")){
-                       lhcEntries = (((TObjString*)tokens->At(1))->String()).Atoi();
-                       AliInfo(Form("LHC entries = %d",lhcEntries));
-                       AliDebug(3,Form("LHC entries = %d",lhcEntries));
-                       continue;
+                 lhcEntries = (((TObjString*)tokens->At(1))->String()).Atoi();
+                 AliInfo(Form("LHC entries = %d",lhcEntries));
+                 AliDebug(3,Form("LHC entries = %d",lhcEntries)); 
+                 delete tokens;
+                 continue;
                }
                if (ntokens == 1 && !(((TObjString*)tokens->At(0))->String()).CompareTo("END_OF_DATA")){
                        AliDebug(2,"End of file reached");
index 0afda08..c15979c 100644 (file)
@@ -224,8 +224,7 @@ Bool_t AliSurveyObj::IsValidDetector(TString detector) const {
 
   TObjArray *dets = fgkValidDetectors.Tokenize(',');
   TObject *found = dets->FindObject(detector);
-  dets->Delete();
-  dets = 0;
+  delete dets;
 
   if (!found) return kFALSE;
   else return kTRUE;
@@ -242,17 +241,12 @@ TString AliSurveyObj::RealFolderName(TString detector) const {
 
   TObjArray *dets = fgkGRPDetectors.Tokenize(',');
   if (dets->FindObject(detector)) folderName = "GRP";
-  dets->Delete();
-  dets = 0;
+  delete dets;
 
   dets = fgkMUONDetectors.Tokenize(',');
   if (dets->FindObject(detector)) folderName = "MUON";
-  dets->Delete();  
-
-
-  dets = 0;
-
+  delete dets;
+  
   return folderName;
 }
 
@@ -420,8 +414,8 @@ void AliSurveyObj::ListValidDetectors() {
     TObjArray *dets = fgkValidDetectors.Tokenize(',');
     for (int i = 0; i < dets->GetEntries(); ++i) 
        Printf("%s", ((TObjString *) dets->At(i))->GetString().Data());
-    dets->Delete();
-    dets = 0;
+    delete dets;
+
     Printf("Some reports are stored in more general folders.\n"
            "These reports can be opened using either name, the original or the\n"
            "folder name. Example: 'SPACEFRAME' or 'GRP' are both valid when\n"
@@ -430,14 +424,12 @@ void AliSurveyObj::ListValidDetectors() {
     dets = fgkMUONDetectors.Tokenize(',');
     for (int i = 0; i < dets->GetEntries(); ++i) 
        Printf("%s", ((TObjString *) dets->At(i))->GetString().Data());
-    dets->Delete();
-    dets = 0;
+    delete dets;
     Printf("Detectors stored in 'GRP' folder:");
     dets = fgkGRPDetectors.Tokenize(',');
     for (int i = 0; i < dets->GetEntries(); ++i) 
        Printf("%s", ((TObjString *) dets->At(i))->GetString().Data());
-    dets->Delete();
-    dets = 0;
+    delete dets;
     return;
 }
 
@@ -580,7 +572,6 @@ Bool_t AliSurveyObj::ParseBuffer(const Char_t* buf) {
          lines->Add(oneLineObj);
   }
 
-  linesRaw->Delete();
   delete linesRaw;
   linesRaw = NULL;
 
@@ -700,7 +691,7 @@ Bool_t AliSurveyObj::ParseBuffer(const Char_t* buf) {
        colLine = nextLine.Tokenize(',');
        if (colLine->GetEntries() != fNrColumns) {
          AliError("Survey text file sintax error! (Declared number of Columns doesn't match number of column names)");
-         colLine->Delete();
+         delete colLine;
          lines->Delete();
          delete lines; lines = NULL;
          return kFALSE;
@@ -839,7 +830,7 @@ Bool_t AliSurveyObj::ParseBuffer(const Char_t* buf) {
          if (dataLine->GetEntries() != fNrColumns) {
            // The number of columns doesn't match the number specified in the header
            AliError("Survey text file sintax error! (Number of entries in line is different from number of Columns)");
-           dataLine->Delete();
+           delete dataLine;
            lines->Delete();
            delete lines; lines = NULL;
            return kFALSE;
index ca0ba42..409f6b3 100644 (file)
@@ -171,6 +171,7 @@ AliTriggerRunScalers* AliTriggerRunScalers::ReadScalers( TString & filename )
       if (ntokens != 1) { 
         AliErrorClass( Form( "Error reading version number from (%s), line :%s\n", 
                               filename.Data() , strLine.Data() ) );  
+       delete tokens;
         return NULL;
       }
   //    cout << "Version "<< ((TObjString*)tokens->At(0))->String().Atoi() << endl;
@@ -237,6 +238,7 @@ AliTriggerRunScalers* AliTriggerRunScalers::ReadScalers( TString & filename )
         AliErrorClass( Form( "Error reading scalers from (%s): line (%s)", 
                             filename.Data(), strLine1.Data() ));
        delete rec;
+       delete tokens1;
        return rScaler;
       }
 
index 038a8bf..2ad6162 100644 (file)
@@ -177,7 +177,7 @@ void AliProdInfo::ParseProdInfo(TNamed *prodInfoData) {
       */
     }
   }
-
+  delete tokens;
 }
 
 //-------------------------------------------------------------------------------------------------    
index d0a943d..e88d97c 100644 (file)
@@ -562,12 +562,14 @@ AliTOFAnalysisTaskCalibPass0::CalibrateAndStore(TH2F *histoVertexTimestamp, TH2F
   if (!ostr) {
     AliError("problems while getting run number from histogram title");
     fStatus = kDataError;
+    delete strarr;
     return kFALSE;
   }
   str = ostr->GetString();
   if (!str.BeginsWith("run:")) {
     AliError("problems while getting run number from histogram title");
     fStatus = kDataError;
+    delete strarr;
     return kFALSE;
   }
   str.Remove(0, 5);
@@ -575,6 +577,7 @@ AliTOFAnalysisTaskCalibPass0::CalibrateAndStore(TH2F *histoVertexTimestamp, TH2F
   if (runNb <= 0) {
     AliError(Form("bad run number: %d", runNb));
     fStatus = kDataError;
+    delete strarr;
     return kFALSE;
   }
   AliInfo(Form("got run number: %d", runNb));
@@ -584,6 +587,7 @@ AliTOFAnalysisTaskCalibPass0::CalibrateAndStore(TH2F *histoVertexTimestamp, TH2F
   if (!ostr) {
     AliError("problems while getting start timestamp from histogram title");
     fStatus = kDataError;
+    delete strarr;
     return kFALSE;
   }
   str = ostr->GetString();
@@ -591,6 +595,7 @@ AliTOFAnalysisTaskCalibPass0::CalibrateAndStore(TH2F *histoVertexTimestamp, TH2F
   if (!str.BeginsWith("startTimestamp:")) {
     AliError("problems while getting start timestamp from histogram title");
     fStatus = kDataError;
+    delete strarr;
     return kFALSE;
   }
   str.Remove(0, 16);
@@ -598,6 +603,7 @@ AliTOFAnalysisTaskCalibPass0::CalibrateAndStore(TH2F *histoVertexTimestamp, TH2F
   if (startTimestamp <= 0) {
     AliError(Form("bad start timestamp: %d", startTimestamp));
     fStatus = kDataError;
+    delete strarr;
     return kFALSE;
   }
   TTimeStamp ts = startTimestamp;
@@ -608,6 +614,7 @@ AliTOFAnalysisTaskCalibPass0::CalibrateAndStore(TH2F *histoVertexTimestamp, TH2F
   if (!ostr) {
     AliError("problems while getting BPTX from histogram title");
     fStatus = kDataError;
+    delete strarr;
     return kFALSE;
   }
   str = ostr->GetString();
@@ -615,12 +622,15 @@ AliTOFAnalysisTaskCalibPass0::CalibrateAndStore(TH2F *histoVertexTimestamp, TH2F
   if (!str.BeginsWith("BPTX:")) {
     AliError("problems while getting BPTX from histogram title");
     fStatus = kDataError;
+    delete strarr;
     return kFALSE;
   }
   str.Remove(0, 6);
   Bool_t useBPTX = atoi(str.Data());
   AliInfo(Form("got BPTX: %d", useBPTX));
 
+  delete strarr;
+
   /*** CALIBRATION STAGE ***/
 
   /* get fit function */
index a3c4ad1..492bd17 100644 (file)
@@ -3047,6 +3047,7 @@ void AliTPCCalibCE::DumpToFile(const Char_t *filename, const Char_t *dir, Bool_t
       type=optString.Atoi();
     }
   }
+  delete arr;
 
   if ( type==4 ){
     // only for the new algorithm
index 6b95b69..cb6972c 100644 (file)
@@ -576,7 +576,8 @@ Int_t  AliTPCCalibViewer::DrawHisto1D(const char* drawCommand, const char* secto
       Double_t sig = (str.IsFloat()) ? str.Atof() : 0;
       nsigma[i] = sig;
    }
-   
+   delete sigmasTokens;
+
    TString drawStr(drawCommand);
    Bool_t dangerousToDraw = drawStr.Contains(":") || drawStr.Contains(">>");
    if (dangerousToDraw) {
@@ -749,7 +750,8 @@ Int_t AliTPCCalibViewer::SigmaCut(const char* drawCommand, const char* sector, c
       Double_t sig = (str.IsFloat()) ? str.Atof() : 0;
       nsigma[i] = sig;
    }
-  
+   delete sigmasTokens;
+
    if (plotMean) {
       cutHistoMean = AliTPCCalibViewer::SigmaCut(htemp, mean, sigma, sigmaMax, sigmaStep, pm);
       if (cutHistoMean) {
@@ -835,6 +837,7 @@ Int_t AliTPCCalibViewer::SigmaCutNew(const char* drawCommand, const char* sector
       Double_t sig = (str.IsFloat()) ? str.Atof() : 0;
       nsigma[i] = sig;
    }
+   delete sigmasTokens;
    
    if (plotMean) {
       for (Int_t i = 0; i < entries; i++) {
@@ -942,7 +945,8 @@ Int_t AliTPCCalibViewer::IntegrateOld(const char* drawCommand, const char* secto
       Double_t sig = (str.IsFloat()) ? str.Atof() : 0;
       nsigma[i] = sig;
    }
-  
+   delete sigmasTokens;
+
    TLegend * legend = new TLegend(.7,.7, .99, .99, "Integrated histogram");
    //fListOfObjectsToBeDeleted->Add(legend);
    TH1F *integralHistoMean = 0;
@@ -1038,7 +1042,8 @@ Int_t AliTPCCalibViewer::Integrate(const char* drawCommand, const char* sector,
       Double_t sig = (str.IsFloat()) ? str.Atof() : 0;
       nsigma[i] = sig;
    }
-  
+   delete sigmasTokens;
+
    TLegend * legend = new TLegend(.7,.7, .99, .99, "Integrated histogram");
    //fListOfObjectsToBeDeleted->Add(legend);
   
@@ -1751,7 +1756,10 @@ TString* AliTPCCalibViewer::Fit(const char* drawCommand, const char* formula, co
    fitter->ClearPoints();
    
    Int_t entries = Draw(drawStr.Data(), cutStr.Data(), "goff");
-   if (entries == -1) return new TString("An ERROR has occured during fitting!");
+   if (entries == -1) {
+     delete formulaTokens;
+     return new TString("An ERROR has occured during fitting!");
+   }
    Double_t **values = new Double_t*[dim+1] ; 
    
    for (Int_t i = 0; i < dim + 1; i++){
@@ -1761,6 +1769,7 @@ TString* AliTPCCalibViewer::Fit(const char* drawCommand, const char* formula, co
       
       if (entries != centries) {
         delete [] values;
+       delete formulaTokens;
         return new TString("An ERROR has occured during fitting!");
       }
       values[i] = new Double_t[entries];
@@ -2359,6 +2368,7 @@ void AliTPCCalibViewer::CreateObjectList(const Char_t *filename, TObjArray *cali
       }
       delete fIn;
    }
+   delete arrFileLine;
 }
 
 
index eebaccc..33016a2 100644 (file)
@@ -1347,7 +1347,9 @@ void AliTPCPreprocessorOffline::MakeFitTime(){
   fAlignTree->SetAlias("err","rms");
 
   TString *strDeltaITS = TStatToolkit::FitPlaneConstrain(fAlignTree,"mean:err", fstringFast.Data(),cutFit, chi2,npoints,param,covar,-1,0, npointsMax, 1);
-  strDeltaITS->Tokenize("++")->Print();
+  TObjArray* tokArr = strDeltaITS->Tokenize("++");
+  tokArr->Print();
+  delete tokArr;
   fAlignTree->SetAlias("fitYFast",strDeltaITS->Data());
   // 
   TVectorD paramC= param;
index 2fc2c80..f61f08c 100644 (file)
@@ -178,6 +178,7 @@ void AliTPCPreprocessorOnline::AddComponent(TObject *obj) {
       TObjArray *stokens = objName.Tokenize("_ROC");
       TString rocNumber(""); 
       if (stokens->GetEntriesFast()>1) rocNumber = ((TObjString*)stokens->At(1))->GetString();
+      delete stokens;
       Int_t iroc = -1;
       if (rocNumber.IsAlnum()) iroc = rocNumber.Atoi();
       
index 9b49661..c65476e 100644 (file)
@@ -591,7 +591,8 @@ void AliTPCcalibDB::CreateObjectList(const Char_t *filename, TObjArray *calibObj
       
       TObjString *sObjType     = (TObjString*)(arrNextCol->At(0));
       TObjString *sObjFileName = (TObjString*)(arrNextCol->At(1));
-      
+      delete arrNextCol;
+
       if ( !sObjType || ! sObjFileName ) continue;
       TString sType(sObjType->GetString());
       TString sFileName(sObjFileName->GetString());
@@ -650,6 +651,7 @@ void AliTPCcalibDB::CreateObjectList(const Char_t *filename, TObjArray *calibObj
       }
       delete fIn;
    }
+   delete arrFileLine;
 }
 
 Int_t AliTPCcalibDB::InitDeadMap() {
index 01df712..00377a6 100644 (file)
@@ -2135,6 +2135,7 @@ Int_t  AliTPCcalibDButil::MakeRunList(Int_t startRun, Int_t stopRun){
       runs[naccept]=irunN;
       naccept++;
     }}
+  delete arr;
   fRuns.Set(naccept);
   fRunsStart.Set(fRuns.fN);
   fRunsStop.Set(fRuns.fN);
index 3123033..cfd80b6 100644 (file)
@@ -874,14 +874,19 @@ void AliTPCkalmanAlign::FitCE(){
   TString * strFitG=0;
   TString * strFitLX=0;
   //
+  TObjArray* tokArr = 0;
   strFitG = TStatToolkit::FitPlane(chain,"deltaT", fstringG.Data(),"sideA"+cutAll, chi2,npoints,vecG[0],covar,-1,0, 10000000, kFALSE);
   chain->SetAlias("tfitGA",strFitG->Data());
-  strFitG->Tokenize("++")->Print();
+  tokArr = strFitG->Tokenize("++");
+  tokArr->Print();
+  delete tokArr;
   printf("chi2=%f\n",TMath::Sqrt(chi2/npoints));
   //
   strFitG = TStatToolkit::FitPlane(chain,"deltaT", fstringG.Data(),"sideC"+cutAll, chi2,npoints,vecG[1],covar,-1,0, 10000000, kFALSE);
   chain->SetAlias("tfitGC",strFitG->Data());
-  strFitG->Tokenize("++")->Print();
+  tokArr = strFitG->Tokenize("++");
+  tokArr->Print();
+  delete tokArr;
   printf("chi2=%f\n",TMath::Sqrt(chi2/npoints));
   //
   AliTPCCalPad *padFitG =AliTPCCalPad::CreateCalPadFit("1++gy/500.++gx/500.++0+++0++0++0++0",vecG[0],vecG[1]);
@@ -1050,6 +1055,8 @@ void   AliTPCkalmanAlign::Update1D(TString &input, TString filter, TVectorD &par
   for (Int_t i=0; i<array0->GetEntries(); i++){
     param(i)=paramM(i,0);
   }
+  delete array0;
+  delete array1;
 }
 
 
@@ -1074,6 +1081,8 @@ TString  AliTPCkalmanAlign::FilterFit(TString &input, TString filter, TVectorD &
     }
   }
   result+="-0.)";
+  delete array0;
+  delete array1;
   return result;
 }
 
index 7066f98..2bf6fb7 100644 (file)
@@ -389,6 +389,7 @@ Bool_t  AliXRDPROOFtoolkit::FilterList(const char*inputList, const char*fileList
     counter++;    
   }
   finput.close();
+  delete array;
   return kTRUE;
 }
 
@@ -494,6 +495,7 @@ Bool_t  AliXRDPROOFtoolkit::XRDCopyDir(const char * idir, const char * files, co
     Bool_t result = TFile::Cp(infile,outfile); 
     succes &= result;
   }
+  delete array;
   return succes;
 }
 
@@ -571,12 +573,14 @@ void AliXRDPROOFtoolkit::JoinTreesIndex(const char * outputFile, const char * ou
       TFile * f = TFile::Open(description->At(4)->GetName());
       if (!f){
        printf("Fatal: Invalid description: fileName %s\n", description->At(4)->GetName());
+       delete arrayInput;
        return;
       }
       arrayFile->AddAt(f,itree);
       TTree * tree = (TTree*)f->Get(description->At(3)->GetName());
       if (!tree){
        printf("Fatal: Invalid description. Tree name\t%s\n", description->At(3)->GetName());
+       delete arrayInput;
        return;
       }
       tree->SetCacheSize(400000000);
@@ -589,6 +593,7 @@ void AliXRDPROOFtoolkit::JoinTreesIndex(const char * outputFile, const char * ou
 
     }}
   //  
+  delete arrayInput;
   // 2. Make the run list
   //
   //
index 932d06e..0348b02 100644 (file)
@@ -401,6 +401,7 @@ void AliTRDReconstructor::SetOption(Option_t *opt)
 
     AliWarning(Form("Unknown option flag %s.", sopt.Data()));
   }
+  delete opar;
 }
 
 //_____________________________________________________________________________
index f22efe2..2063326 100644 (file)
@@ -103,12 +103,14 @@ Bool_t AliTRDgtuSim::RunGTUFromTrackletFile(TString filename, Int_t event, Int_t
     TObjArray *tokens = string.Tokenize(" ");
     if (tokens->GetEntriesFast() < 7) {
       AliWarning(Form("Invalid input in line %i, too few parameters", lineno));
+      delete tokens;
       continue;
     }
 
-    if ( ((TObjString*) tokens->At(0))->GetString().Atoi() < event)
+    if ( ((TObjString*) tokens->At(0))->GetString().Atoi() < event) {
+      delete tokens;
       continue;
-
+    }
     iEvent = ((TObjString*) tokens->At(0))->GetString().Atoi();
     iSec = ((TObjString*) tokens->At(1))->GetString().Atoi();
     iStack = ((TObjString*) tokens->At(2))->GetString().Atoi();
@@ -152,6 +154,8 @@ Bool_t AliTRDgtuSim::RunGTUFromTrackletFile(TString filename, Int_t event, Int_t
       if (fTMU)
        fTMU->AddTracklet(trkl, iLink);
     }
+    //
+    delete tokens;
   }
 
   if (fTMU && evcnt < noev) {
index ec315e2..078e10d 100644 (file)
@@ -243,6 +243,8 @@ void AliVZEROCalibData::SetParameter(TString name, Int_t val){
        else if(name.Contains("DelayHit")) SetTimeOffset(0.01*(Float_t)val,iBoard,(iChannel-1));
        else if(name.Contains("DiscriThr")) SetDiscriThr(((Float_t)val-2040.)/112.,iBoard,(iChannel-1));
        else AliError(Form("No Setter found for FEE parameter : %s",name.Data()));
+       //
+       delete nameSplit;
 }
 
 //________________________________________________________________
index 7396501..d515676 100644 (file)
@@ -192,6 +192,8 @@ void AliVZEROTriggerData::SetParameter(TString name, Int_t val){
        else if(name.Contains("PedCutOdd")) SetPedestalCut((UShort_t) val, 1, iBoard, iChannel-1);\r
        else if(name.Contains("PedCutEven")) SetPedestalCut((UShort_t) val, 0, iBoard, iChannel-1);\r
        else AliError(Form("No Setter found for FEE parameter : %s",name.Data()));\r
+       //\r
+       delete nameSplit;\r
 }\r
 //________________________________________________________________\r
 void AliVZEROTriggerData::SetPedestalCut(UShort_t val,Int_t integrator, Int_t board, Int_t channel)\r