Fixes for bug #71975: BUFFER_SIZE problem reported by Coverity
authorhristov <hristov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 30 Aug 2010 12:11:04 +0000 (12:11 +0000)
committerhristov <hristov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 30 Aug 2010 12:11:04 +0000 (12:11 +0000)
ANALYSIS/AliESDpidCuts.cxx
ANALYSIS/AliESDpidCuts.h
HLT/BASE/AliHLTReadoutList.cxx
PWG1/TRD/AliTRDpidRefMaker.cxx
PWG1/TRD/AliTRDpidRefMaker.h
PWG1/TRD/info/AliTRDv0Info.cxx
PWG1/libPWG1.pkg
PWG3/hfe/AliHFEcuts.cxx

index c2f0c23..b34403b 100644 (file)
@@ -51,8 +51,8 @@ AliESDpidCuts::AliESDpidCuts(const Char_t *name, const Char_t *title):
   //\r
   \r
   fESDpid = new AliESDpid;\r
-  memset(fCutTPCnSigma, 0, sizeof(Float_t) * 2);\r
-  memset(fCutTOFnSigma, 0, sizeof(Float_t) * 2);\r
+  memset(fCutTPCnSigma, 0, sizeof(Float_t)* AliPID::kSPECIES * 2);\r
+  memset(fCutTOFnSigma, 0, sizeof(Float_t)* AliPID::kSPECIES * 2);\r
 \r
   memset(fHclusterRatio, 0, sizeof(TH1F *) * 2);\r
   memset(fHnSigmaTPC, 0, sizeof(TH1F *) * AliPID::kSPECIES * 2);\r
@@ -160,7 +160,7 @@ void AliESDpidCuts::Copy(TObject &c) const {
   }\r
  \r
   memcpy(target.fCutTPCnSigma, fCutTPCnSigma, sizeof(Float_t) * AliPID::kSPECIES * 2);\r
-  memcpy(target.fCutTOFnSigma, fCutTOFnSigma, sizeof(Float_t) * AliPID::kSPECIES);\r
+  memcpy(target.fCutTOFnSigma, fCutTOFnSigma, sizeof(Float_t) * AliPID::kSPECIES * 2);\r
  \r
   AliESDpidCuts::Copy(c);\r
 }\r
index a76f69d..d7c9e52 100644 (file)
@@ -61,7 +61,7 @@ class AliESDpidCuts : public AliAnalysisCuts{
     Char_t  fTPCsigmaCutRequired;                   // Sigma cut Requirement for TPC and Particle Species\r
     Char_t  fTOFsigmaCutRequired;                   // Sigma cut Requirement for TOF and Particle Species\r
     Float_t fCutTPCnSigma[AliPID::kSPECIES * 2];    // Species dependent cut on the distance to the TPC dE/dx line\r
-    Float_t fCutTOFnSigma[AliPID::kSPECIES];        // Species dependent cut on the distance to the TOF calculated time of flight line\r
+    Float_t fCutTOFnSigma[AliPID::kSPECIES * 2];    // Species dependent cut on the distance to the TOF calculated time of flight line\r
     Float_t fCutTPCclusterRatio;                    // Cut on Ratio of found clusters with repect to findable clusters in the TPC\r
     Float_t fMinMomentumTOF;                        // Apply TOF PID only above a certain momentum\r
 \r
@@ -74,7 +74,7 @@ class AliESDpidCuts : public AliAnalysisCuts{
     TH1F *fHnSigmaTOF[AliPID::kSPECIES][2];      // TOF n-sigma cut\r
     //------------------------------------------\r
     \r
-    ClassDef(AliESDpidCuts, 2)\r
+    ClassDef(AliESDpidCuts, 3)\r
 };\r
 \r
 //_____________________________________________________________________\r
index 1f17755..43f426a 100644 (file)
@@ -189,7 +189,7 @@ void AliHLTReadoutList::FillStruct(const AliHLTEventDDL& list)
   }
   else if (list.fCount == (unsigned)gkAliHLTDDLListSizeV1)
   {
-    memcpy(&fReadoutList.fList, &list.fList, sizeof(AliHLTEventDDL));
+    memcpy(&fReadoutList, &list, sizeof(AliHLTEventDDL));
   }
   else
   {
index c026e04..f580102 100644 (file)
@@ -70,7 +70,7 @@ AliTRDpidRefMaker::AliTRDpidRefMaker(const char *name, const char *title)
   // Default constructor
   //
 
-  memset(fdEdx, 0, 10*sizeof(Float_t));
+  memset(fdEdx, 0, AliTRDpidUtil::kNNslices*sizeof(Float_t));
   memset(fPID, 0, AliPID::kSPECIES*sizeof(Float_t));
 
   DefineInput(2, TObjArray::Class()); // v0 list
index 9ceebe0..24b9cb3 100644 (file)
 #include "AliPID.h"
 #endif
 #ifndef ALITRDCALPID_H
-#include "Cal/AliTRDCalPID.h"
+#include "AliTRDCalPID.h"
+#endif
+#ifndef ALITRDPIDUTIL_H
+#include "AliTRDpidUtil.h"
 #endif
 #ifndef ALITRDGEOMETRY_H
 #include "AliTRDgeometry.h"
@@ -83,7 +86,7 @@ protected:
   ETRDpidRefMakerSource  fRefP;         // reference momentum source
   Float_t       fFreq;                  // training sample relative abundance
   Float_t       fP;                     // momentum
-  Float_t       fdEdx[8];               // dEdx array
+  Float_t       fdEdx[AliTRDpidUtil::kNNslices];// dEdx array
   Float_t       fPID[AliPID::kSPECIES]; // pid from v0s
 
 private:
index 2826d4b..cc4f1fb 100644 (file)
@@ -76,9 +76,9 @@ AliTRDv0Info::AliTRDv0Info()
   memset(fPminus, 0, 2*kNlayer*sizeof(Float_t));
   memset(fDetPID, 0, 2*kNDaughters*kNDetectors*AliPID::kSPECIES*sizeof(Float_t));
   memset(fComPID, 0, 2*kNDaughters*AliPID::kSPECIES*sizeof(Float_t));
-  memset(fInvMass, 0, kNMomBins*kNDecays*sizeof(Double_t));
+  memset(fInvMass, 0, kNDecays*sizeof(Double_t));
   memset(fArmenteros, 0, kNDecays*sizeof(Bool_t));
-  memset(fTPCdEdx, 0, kNDecays*sizeof(Float_t));
+  memset(fTPCdEdx, 0, kNDaughters*sizeof(Float_t));
   memset(fChi2ndf, 0, kNDecays*sizeof(Double_t));
 
   /////////////////////////////////////////////////////////////////////////////
@@ -264,7 +264,7 @@ AliTRDv0Info::AliTRDv0Info(const AliTRDv0Info &ref)
   memcpy(fPminus, ref.fPminus, 2*kNlayer*sizeof(Float_t));
   memcpy(fDetPID, ref.fDetPID, 2*kNDaughters*kNDetectors*AliPID::kSPECIES*sizeof(Float_t));
   memcpy(fComPID, ref.fComPID, 2*kNDaughters*AliPID::kSPECIES*sizeof(Float_t));
-  memcpy(fInvMass, ref.fInvMass, kNMomBins*kNDecays*sizeof(Double_t));
+  memcpy(fInvMass, ref.fInvMass, kNDecays*sizeof(Double_t));
   memcpy(fArmenteros, ref.fArmenteros, kNDecays*sizeof(Bool_t));
   memcpy(fChi2ndf, ref.fChi2ndf, kNDecays*sizeof(Double_t));
   memcpy(fTPCdEdx, ref.fTPCdEdx, kNDaughters*sizeof(Float_t));
index 6547925..872c64d 100644 (file)
@@ -14,7 +14,7 @@ SRCS:= $(patsubst PWG1/%, %, ${ORGSRCS})
 HDRS:= $(SRCS:.cxx=.h)
 DHDR:= PWG1LinkDef.h
 
-EINCLUDE:= STEER TPC ITS TRD ANALYSIS/Tender ANALYSIS PWG1/comparison PWG1/cosmic PWG1/global PWG1/tender PWG1/ITS PWG1/TPC PWG1/TRD PWG1/TRD/info PWG1/background
+EINCLUDE:= STEER TPC ITS TRD TRD/Cal ANALYSIS/Tender ANALYSIS PWG1/comparison PWG1/cosmic PWG1/global PWG1/tender PWG1/ITS PWG1/TPC PWG1/TRD PWG1/TRD/info PWG1/background
 
 ifeq (win32gcc,$(ALICE_TARGET))
 PACKSOFLAGS:= $(SOFLAGS) -L$(ALICE_ROOT)/lib/tgt_$(ALICE_TARGET) -lSTEERBase \
index 602b9d2..ed1307b 100644 (file)
@@ -113,7 +113,7 @@ AliHFEcuts::AliHFEcuts(const AliHFEcuts &c):
   // Copy Constructor
   //
   memcpy(fProdVtx, c.fProdVtx, sizeof(Double_t) * 4);
-  memcpy(fDCAtoVtx, c.fDCAtoVtx, sizeof(Double_t) * 4);
+  memcpy(fDCAtoVtx, c.fDCAtoVtx, sizeof(Double_t) * 2);
   memcpy(fPtRange, c.fPtRange, sizeof(Double_t) *2);
   fCutList = dynamic_cast<TObjArray *>(c.fCutList->Clone());
   fCutList->SetOwner();