Try to fix coverity defects
authorcblume <cblume@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 30 Nov 2011 08:53:03 +0000 (08:53 +0000)
committercblume <cblume@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 30 Nov 2011 08:53:03 +0000 (08:53 +0000)
TRD/AliTRDdigitizer.cxx
TRD/AliTRDpadPlane.cxx
TRD/AliTRDsimTR.cxx

index 323d650..9bdc9d0 100644 (file)
@@ -618,6 +618,7 @@ Bool_t AliTRDdigitizer::MakeDigits()
 
   Float_t **hits = new Float_t*[kNdet];
   Int_t    *nhit = new Int_t[kNdet];
+  memset(nhit,0,kNdet*sizeof(Int_t));
 
   AliTRDarraySignal *signals = 0x0;
 
@@ -722,11 +723,10 @@ Bool_t AliTRDdigitizer::SortHits(Float_t **hits, Int_t *nhit)
   Int_t    nhitTrk  = 0;
 
   Int_t   *lhit     = new Int_t[kNdet];
+  memset(lhit,0,kNdet*sizeof(Int_t));
 
   for (Int_t det = 0; det < kNdet; det++) {
-    lhit[det] = 0;
-    nhit[det] = 0;
-    hits[det] = 0;
+    hits[det] = 0x0;
   }
 
   AliLoader *gimme = fRunLoader->GetLoader("TRDLoader");
index beba8be..1992735 100644 (file)
@@ -162,10 +162,43 @@ AliTRDpadPlane &AliTRDpadPlane::operator=(const AliTRDpadPlane &p)
   // Assignment operator
   //
 
-  if (this != &p) {
-    ((AliTRDpadPlane &) p).Copy(*this);
+  if (this == &p) {
+    return *this;
   }
 
+  fLayer           = p.fLayer;
+  fStack           = p.fStack;
+  fLength          = p.fLength;
+  fWidth           = p.fWidth;
+  fLengthRim       = p.fLengthRim;
+  fWidthRim        = p.fLengthRim;
+  fLengthOPad      = p.fLengthOPad;
+  fWidthOPad       = p.fWidthOPad;
+  fLengthIPad      = p.fLengthIPad;
+  fWidthIPad       = p.fWidthIPad;
+  fRowSpacing      = p.fRowSpacing;
+  fColSpacing      = p.fColSpacing;
+  fNrows           = p.fNrows;
+  fNcols           = p.fNcols;
+  fTiltingAngle    = p.fTiltingAngle;
+  fTiltingTan      = p.fTiltingTan;
+  fPadRow          = 0;
+  fPadCol          = 0;
+  fPadRowSMOffset  = p.fPadRowSMOffset;
+  fAnodeWireOffset = p.fAnodeWireOffset;
+
+  Int_t iBin = 0;
+
+  fPadRow = new Double_t[fNrows];
+  for (iBin = 0; iBin < fNrows; iBin++) {
+    fPadRow[iBin] = ((AliTRDpadPlane &) p).fPadRow[iBin];
+  }                                                                             
+
+  fPadCol = new Double_t[fNrows];
+  for (iBin = 0; iBin < fNrows; iBin++) {
+    fPadCol[iBin] = ((AliTRDpadPlane &) p).fPadCol[iBin];
+  }                                                                             
+
   return *this;
 
 }
index b1354f5..8a5726c 100644 (file)
@@ -219,6 +219,7 @@ AliTRDsimTR &AliTRDsimTR::operator=(const AliTRDsimTR &s)
   //
 
   if (this != &s) ((AliTRDsimTR &) s).Copy(*this);
+  this->Init();
 
   return *this;