Skip to content

Commit

Permalink
ALIROOT-5585 Additional fixes for memory leaks
Browse files Browse the repository at this point in the history
  • Loading branch information
hristov authored and hristov committed Aug 21, 2014
1 parent d3f9a80 commit 50a6e71
Show file tree
Hide file tree
Showing 2 changed files with 48 additions and 26 deletions.
50 changes: 30 additions & 20 deletions TOF/AliTOFAnalysisTaskCalibPass0.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -481,149 +481,159 @@ AliTOFAnalysisTaskCalibPass0::DoProcessOutput(const Char_t *filename, AliCDBStor
if (!histoVertexTimestamp) {
AliError(Form("cannot get \"hHistoVertexTimestamp\" object from file %s", filename));
fStatus = kInputError;
if (list){
if (list)
delete list;
else {
if (histoVertexTimestamp) delete histoVertexTimestamp;
if (histoDeltatTimestamp )delete histoDeltatTimestamp;
if (histoDeltazEta) delete histoDeltazEta;
if (histoDeltatEta) delete histoDeltatEta;
if (histoDeltazCosTheta) delete histoDeltazCosTheta;
if (histoAcceptedTracksEtaPt) delete histoAcceptedTracksEtaPt;
if (histoMatchedTracksEtaPt) delete histoMatchedTracksEtaPt;
delete list;
}
return kFALSE;
}
if (!histoDeltatTimestamp) {
AliError(Form("cannot get \"hHistoDeltatTimestamp\" object from file %s", filename));
fStatus = kInputError;
if (list){
if (list)
delete list;
else{
if (histoVertexTimestamp) delete histoVertexTimestamp;
if (histoDeltatTimestamp )delete histoDeltatTimestamp;
if (histoDeltazEta) delete histoDeltazEta;
if (histoDeltatEta) delete histoDeltatEta;
if (histoDeltazCosTheta) delete histoDeltazCosTheta;
if (histoAcceptedTracksEtaPt) delete histoAcceptedTracksEtaPt;
if (histoMatchedTracksEtaPt) delete histoMatchedTracksEtaPt;
delete list;
}
return kFALSE;
}
if (!histoDeltazEta) {
AliError(Form("cannot get \"hHistoDeltazEta\" object from file %s", filename));
fStatus = kInputError;
if (list){
if (list)
delete list;
else{
if (histoVertexTimestamp) delete histoVertexTimestamp;
if (histoDeltatTimestamp )delete histoDeltatTimestamp;
if (histoDeltazEta) delete histoDeltazEta;
if (histoDeltatEta) delete histoDeltatEta;
if (histoDeltazCosTheta) delete histoDeltazCosTheta;
if (histoAcceptedTracksEtaPt) delete histoAcceptedTracksEtaPt;
if (histoMatchedTracksEtaPt) delete histoMatchedTracksEtaPt;
delete list;
}
return kFALSE;
}
if (!histoDeltatEta) {
AliError(Form("cannot get \"hHistoDeltatEta\" object from file %s", filename));
fStatus = kInputError;
if (list){
if (list)
delete list;
else{
if (histoVertexTimestamp) delete histoVertexTimestamp;
if (histoDeltatTimestamp )delete histoDeltatTimestamp;
if (histoDeltazEta) delete histoDeltazEta;
if (histoDeltatEta) delete histoDeltatEta;
if (histoDeltazCosTheta) delete histoDeltazCosTheta;
if (histoAcceptedTracksEtaPt) delete histoAcceptedTracksEtaPt;
if (histoMatchedTracksEtaPt) delete histoMatchedTracksEtaPt;
delete list;
}
return kFALSE;
}
if (!histoDeltazCosTheta) {
AliError(Form("cannot get \"hHistoDeltazCosTheta\" object from file %s", filename));
fStatus = kInputError;
if (list){
if (list)
delete list;
else{
if (histoVertexTimestamp) delete histoVertexTimestamp;
if (histoDeltatTimestamp )delete histoDeltatTimestamp;
if (histoDeltazEta) delete histoDeltazEta;
if (histoDeltatEta) delete histoDeltatEta;
if (histoDeltazCosTheta) delete histoDeltazCosTheta;
if (histoAcceptedTracksEtaPt) delete histoAcceptedTracksEtaPt;
if (histoMatchedTracksEtaPt) delete histoMatchedTracksEtaPt;
delete list;
}
return kFALSE;
}
if (!histoAcceptedTracksEtaPt) {
AliError(Form("cannot get \"hHistoAccptedTracksEtaPt\" object from file %s", filename));
fStatus = kInputError;
if (list){
if (list)
delete list;
else{
if (histoVertexTimestamp) delete histoVertexTimestamp;
if (histoDeltatTimestamp )delete histoDeltatTimestamp;
if (histoDeltazEta) delete histoDeltazEta;
if (histoDeltatEta) delete histoDeltatEta;
if (histoDeltazCosTheta) delete histoDeltazCosTheta;
if (histoAcceptedTracksEtaPt) delete histoAcceptedTracksEtaPt;
if (histoMatchedTracksEtaPt) delete histoMatchedTracksEtaPt;
delete list;
}
return kFALSE;
}
if (!histoMatchedTracksEtaPt) {
AliError(Form("cannot get \"hHistoMatchedTracksEtaPt\" object from file %s", filename));
fStatus = kInputError;
if (list){
if (list)
delete list;
else{
if (histoVertexTimestamp) delete histoVertexTimestamp;
if (histoDeltatTimestamp )delete histoDeltatTimestamp;
if (histoDeltazEta) delete histoDeltazEta;
if (histoDeltatEta) delete histoDeltatEta;
if (histoDeltazCosTheta) delete histoDeltazCosTheta;
if (histoAcceptedTracksEtaPt) delete histoAcceptedTracksEtaPt;
if (histoMatchedTracksEtaPt) delete histoMatchedTracksEtaPt;
delete list;
}
return kFALSE;
}

/* check matching performance */
if (!CheckMatchingPerformance(histoDeltazEta, histoAcceptedTracksEtaPt, histoMatchedTracksEtaPt)) {
AliError("error while checking matching efficiency");
if (list){
if (list)
delete list;
else{
if (histoVertexTimestamp) delete histoVertexTimestamp;
if (histoDeltatTimestamp )delete histoDeltatTimestamp;
if (histoDeltazEta) delete histoDeltazEta;
if (histoDeltatEta) delete histoDeltatEta;
if (histoDeltazCosTheta) delete histoDeltazCosTheta;
if (histoAcceptedTracksEtaPt) delete histoAcceptedTracksEtaPt;
if (histoMatchedTracksEtaPt) delete histoMatchedTracksEtaPt;
delete list;
}
return kFALSE;
}
/* calibrate and store */
if (!CalibrateAndStore(histoVertexTimestamp, histoDeltatTimestamp, db)) {
AliError("error while calibrating and storing");
if (list){
if (list)
delete list;
else{
if (histoVertexTimestamp) delete histoVertexTimestamp;
if (histoDeltatTimestamp )delete histoDeltatTimestamp;
if (histoDeltazEta) delete histoDeltazEta;
if (histoDeltatEta) delete histoDeltatEta;
if (histoDeltazCosTheta) delete histoDeltazCosTheta;
if (histoAcceptedTracksEtaPt) delete histoAcceptedTracksEtaPt;
if (histoMatchedTracksEtaPt) delete histoMatchedTracksEtaPt;
delete list;
}
return kFALSE;
}

if (list){
if (list)
delete list;
else{
if (histoVertexTimestamp) delete histoVertexTimestamp;
if (histoDeltatTimestamp )delete histoDeltatTimestamp;
if (histoDeltazEta) delete histoDeltazEta;
if (histoDeltatEta) delete histoDeltatEta;
if (histoDeltazCosTheta) delete histoDeltazCosTheta;
if (histoAcceptedTracksEtaPt) delete histoAcceptedTracksEtaPt;
if (histoMatchedTracksEtaPt) delete histoMatchedTracksEtaPt;
delete list;
}

/* success */
Expand Down
24 changes: 18 additions & 6 deletions TRD/AliTRDPreprocessorOffline.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -535,11 +535,14 @@ Bool_t AliTRDPreprocessorOffline::ReadGainGlobal(const Char_t* fileName){
TObjArray * array = (TObjArray*)fcalib.Get(fNameList);
if (array){
TH2I *ch2d = (TH2I *) array->FindObject("CH2d");
if(!ch2d) return kFALSE;
if(!ch2d) {
delete array;
return kFALSE;
}
fCH2d = (TH2I*)ch2d->Clone();
delete array;
//fNEvents = (TH1I *) array->FindObject("NEvents");
//fAbsoluteGain = (TH2F *) array->FindObject("AbsoluteGain");
delete array;
}else{
TH2I *ch2d = (TH2I *) fcalib.Get("CH2d");
if(!ch2d) return kFALSE;
Expand All @@ -564,7 +567,10 @@ Bool_t AliTRDPreprocessorOffline::ReadVdriftT0Global(const Char_t* fileName){
TObjArray * array = (TObjArray*)fcalib.Get(fNameList);
if (array){
TProfile2D *ph2d = (TProfile2D *) array->FindObject("PH2d");
if(!ph2d) return kFALSE;
if(!ph2d) {
delete array;
return kFALSE;
}
fPH2d = (TProfile2D*)ph2d->Clone();
//fNEvents = (TH1I *) array->FindObject("NEvents");
delete array;
Expand All @@ -590,7 +596,8 @@ Bool_t AliTRDPreprocessorOffline::ReadVdriftLinearFitGlobal(const Char_t* fileNa
TFile fcalib(fileName);
TObjArray * array = (TObjArray*)fcalib.Get(fNameList);
if (array){
fAliTRDCalibraVdriftLinearFit = (AliTRDCalibraVdriftLinearFit *) array->FindObject("AliTRDCalibraVdriftLinearFit");
AliTRDCalibraVdriftLinearFit * dummy = (AliTRDCalibraVdriftLinearFit *) array->FindObject("AliTRDCalibraVdriftLinearFit");
fAliTRDCalibraVdriftLinearFit = dummy ? (AliTRDCalibraVdriftLinearFit *) dummy->Clone() : 0x0;
//fNEvents = (TH1I *) array->FindObject("NEvents");
delete array;
}else{
Expand All @@ -613,7 +620,8 @@ Bool_t AliTRDPreprocessorOffline::ReadExbAltFitGlobal(const Char_t* fileName){
TFile fcalib(fileName);
TObjArray * array = (TObjArray*)fcalib.Get(fNameList);
if (array){
fAliTRDCalibraExbAltFit = (AliTRDCalibraExbAltFit *) array->FindObject("AliTRDCalibraExbAltFit");
AliTRDCalibraExbAltFit * dummy = (AliTRDCalibraExbAltFit *) array->FindObject("AliTRDCalibraExbAltFit");
fAliTRDCalibraExbAltFit = dummy ? (AliTRDCalibraExbAltFit *)dummy->Clone() : 0x0;
//fNEvents = (TH1I *) array->FindObject("NEvents");
delete array;
}else{
Expand All @@ -638,8 +646,12 @@ Bool_t AliTRDPreprocessorOffline::ReadPRFGlobal(const Char_t* fileName){
TObjArray * array = (TObjArray*)fcalib.Get(fNameList);
if (array){
TProfile2D *prf2d = (TProfile2D *) array->FindObject("PRF2d");
if(!prf2d) return kFALSE;
if(!prf2d) {
delete array;
return kFALSE;
}
fPRF2d = (TProfile2D*)prf2d->Clone();
delete array;
//fNEvents = (TH1I *) array->FindObject("NEvents");
}else{
TProfile2D *prf2d = (TProfile2D *) fcalib.Get("PRF2d");
Expand Down

0 comments on commit 50a6e71

Please sign in to comment.