]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
Fix for memory leak.
authormorsch <morsch@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 26 May 2010 11:21:59 +0000 (11:21 +0000)
committermorsch <morsch@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 26 May 2010 11:21:59 +0000 (11:21 +0000)
Relates to
https://savannah.cern.ch/bugs/?67654

Markus Fasel

PWG1/TRD/info/AliTRDtrackInfo.cxx
PWG1/TRD/info/AliTRDtrackInfo.h

index 6c35ce2463bb295df47f80be24dcaaff276957eb..79cc2f22ed48398aebd2c130bf64f1583c3de0ef 100644 (file)
@@ -208,6 +208,19 @@ AliTRDtrackInfo::AliESDinfo::~AliESDinfo()
   if(fOP) delete fOP; fOP = NULL;
 }
 
+//___________________________________________________
+void AliTRDtrackInfo::AliESDinfo::Delete(const Option_t *){
+  //
+  // Delete Pointer members 
+  // 
+  if(fTRDnSlices){
+    delete [] fTRDslices;
+    fTRDslices = NULL;
+    fTRDnSlices = 0;
+  }
+  if(fOP) delete fOP; fOP = NULL;
+}
+
 
 //___________________________________________________
 AliTRDtrackInfo& AliTRDtrackInfo::operator=(const AliTRDtrackInfo &trdInfo)
@@ -295,6 +308,7 @@ void AliTRDtrackInfo::Delete(const Option_t *)
 
   fNClusters  = 0;
   if(fMC) delete fMC; fMC = NULL;
+  fESD.Delete(NULL);
   if(fTRDtrack) delete fTRDtrack; fTRDtrack = NULL;
 }
 
index 6b16d7a59e7e51e0150127c9112d8536feec5219..6a959deb5e92381942e39a1fa612f4ae3c8d5a51 100644 (file)
@@ -34,6 +34,7 @@ public:
     AliESDinfo(const AliESDinfo &esd);
     virtual ~AliESDinfo();
     AliESDinfo& operator=(const AliESDinfo &esd);
+    void Delete(const Option_t *);
     Bool_t      HasV0() const {return fHasV0;}
     Int_t       GetId() const {return fId;}
     ULong_t     GetStatus() const {return fStatus;}