]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
Memory leaks
authorcblume <cblume@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 13 May 2008 11:10:46 +0000 (11:10 +0000)
committercblume <cblume@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 13 May 2008 11:10:46 +0000 (11:10 +0000)
TRD/AliTRDQADataMakerSim.cxx
TRD/AliTRDSignalIndex.cxx
TRD/AliTRDarrayF.cxx
TRD/AliTRDarrayS.cxx
TRD/AliTRDclusterizer.cxx
TRD/AliTRDdigitsManager.cxx
TRD/AliTRDsegmentArray.cxx

index 91e67fc18a988e0d5e617ece623ff5040399b8c0..b8d03ae1c96e7539443daf6ae3f9e69a631482c4 100644 (file)
@@ -46,6 +46,7 @@
 #include "AliTRDdigitsManager.h"
 #include "AliTRDgeometry.h"
 #include "AliTRDdataArrayS.h"
+#include "AliTRDdataArrayF.h"
 //#include "AliTRDrawStreamTB.h"
 
 #include "AliQAChecker.h"
@@ -218,6 +219,8 @@ void AliTRDQADataMakerSim::MakeHits(TTree * hitTree)
   tmp->Delete();
   delete tmp;
   MakeHits(hits);
+  hits->Delete();
+  delete hits;
 
 }
 
@@ -318,6 +321,7 @@ void AliTRDQADataMakerSim::MakeSDigits(TTree * digits)
   //
 
   AliTRDdigitsManager *digitsManager = new AliTRDdigitsManager();
+  digitsManager->SetSDigits(kTRUE);
   digitsManager->CreateArrays();
   digitsManager->ReadDigits(digits);
 
@@ -327,7 +331,8 @@ void AliTRDQADataMakerSim::MakeSDigits(TTree * digits)
 
   for (Int_t i = 0; i < AliTRDgeometry::kNdet; i++) {
 
-    AliTRDdataArrayS *digitsIn = (AliTRDdataArrayS *) digitsManager->GetDigits(i);      
+    //AliTRDdataArrayS *digitsIn = (AliTRDdataArrayS *) digitsManager->GetDigits(i);      
+    AliTRDdataArrayF *digitsIn = (AliTRDdataArrayF *) digitsManager->GetDigits(i);      
 
     // This is to take care of switched off super modules
     if (digitsIn->GetNtime() == 0) continue;
index 0270fa42e979cc0f96ab8edb807bbb25d339f1f4..5251e4a724a41baaafdfd0bc55dc36ba6733bf1f 100644 (file)
@@ -125,8 +125,10 @@ AliTRDSignalIndex::~AliTRDSignalIndex()
   // Destructor
   //
 
-  delete fIndex;
-  fIndex = NULL;
+  if (fIndex) {
+    delete fIndex;
+    fIndex = NULL;
+  }
 
 }
 
index 264badb0f15cd9211552f2c27081e48d4f38f988..51883b2f832c0a0fe02d6e3d244dbb909fd60cd6 100644 (file)
@@ -46,6 +46,11 @@ AliTRDarrayF::~AliTRDarrayF()
   // Default destructor
   //
 
+  if (fArray) {
+    delete [] fArray;
+    fArray = 0;
+  }
+
 }
 
 //_____________________________________________________________________________
index 2b104330870598656290a24c128f93223297d990..46beb3dde929f774e77e50dd24ae7adfb4cbe928 100644 (file)
@@ -46,6 +46,11 @@ AliTRDarrayS::~AliTRDarrayS()
   // Default destructor
   //
 
+  if (fArray) {
+    delete [] fArray;
+    fArray = 0;
+  }
+
 }
 
 //_____________________________________________________________________________
index f2fd8d695cce36ced066a9c40eb30fb8eeafd016..5671a572552041c8595067eb635f417f683b1653 100644 (file)
@@ -138,6 +138,8 @@ AliTRDclusterizer::~AliTRDclusterizer()
   // AliTRDclusterizer destructor
   //
 
+  printf("----> AliTRDclusterizer::dtor\n");
+
   if (fRecPoints) 
     {
       fRecPoints->Delete();
index 77cd0a9c95fbab4ce81ce479628e0599f08ffad3..4f193379d16a22ac876193c11db762cea01a7795 100644 (file)
@@ -229,15 +229,16 @@ Short_t AliTRDdigitsManager::GetDigitAmp(Int_t row, Int_t col,Int_t time
 UChar_t AliTRDdigitsManager::GetPadStatus(Int_t row, Int_t col, Int_t time
                                              , Int_t det) const
 {
-       //
-       // Returns the pad status for the requested pad
-       //
+  //
+  // Returns the pad status for the requested pad
+  //
        
-       if(!GetDigits(det)){
-               return 0;
-       }
+  if (!GetDigits(det)) {
+    return 0;
+  }
+
+  return ((UChar_t) ((AliTRDdataArrayDigits *) GetDigits(det))->GetPadStatus(row,col,time));
 
-       return ((UChar_t)((AliTRDdataArrayDigits *) GetDigits(det))->GetPadStatus(row, col, time));
 }
 
 //_____________________________________________________________________________
@@ -508,7 +509,7 @@ void AliTRDdigitsManager::ClearIndexes(Int_t det)
   // Clear memory
   //
 
-  ((AliTRDSignalIndex*)fSignalIndexes->At(det))->ClearAll();  
+  ((AliTRDSignalIndex *) fSignalIndexes->At(det))->ClearAll();  
 
 }
 
index e31c4f877b56c942c94ae87845983a45cc601e0b..f91cacb2465b421ef699b33488550cb73c08a8a9 100644 (file)
@@ -49,7 +49,7 @@ AliTRDsegmentArray::AliTRDsegmentArray()
   ,fClass(0)
 {
   //
-   // Default constructor
+  // Default constructor
   //
 
 }
@@ -110,7 +110,8 @@ AliTRDsegmentArray::~AliTRDsegmentArray()
   // AliTRDsegmentArray destructor
   //
 
-  Delete();
+  // Needed ????
+  //Delete();
 
   if (fNSegment) {
     fSegment->Delete();
@@ -304,7 +305,7 @@ void AliTRDsegmentArray::ClearSegment(Int_t index)
   //
 
   if (fSegment->At(index)) {
-    delete fSegment->RemoveAt(index);
+    fClass->Destructor(fSegment->RemoveAt(index)); 
   }
 
 }