Protections for coverity: DIVIDE_BY_ZERO
authorhristov <hristov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 1 Feb 2012 15:20:43 +0000 (15:20 +0000)
committerhristov <hristov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 1 Feb 2012 15:20:43 +0000 (15:20 +0000)
JETAN/DEV/AliJetBkg.cxx
MUON/AliMUONTriggerQADataMakerRec.cxx
MUON/mapping/AliMpDCSNamer.cxx
PHOS/AliPHOSRawFitterv4.cxx
TRD/AliTRDgtuTMU.cxx
TRD/AliTRDmcmSim.cxx

index 9409d4a..7c15ca6 100644 (file)
@@ -215,7 +215,8 @@ void AliJetBkg::SubtractBackg(const Int_t& nIn, const Int_t&nJ, Float_t&etbgTota
       count=count+1;
     }
   }
-  sigmaN=TMath::Sqrt(TMath::Abs(sigmaN)/count);
+  if (count>0)
+    sigmaN=TMath::Sqrt(TMath::Abs(sigmaN)/count);
 
 }
 
index 7b80435..db3288e 100644 (file)
@@ -776,7 +776,7 @@ void AliMUONTriggerQADataMakerRec::MakeRaws(AliRawReader* rawReader)
       } // iReg
 
       Float_t readoutErrors[AliMUONQAIndices::kNtrigStructErrorBins] = {
-       ((Float_t)rawStreamTrig.GetLocalEoWErrors())/((Float_t)countAllBoards),
+       countAllBoards>0?((Float_t)rawStreamTrig.GetLocalEoWErrors())/((Float_t)countAllBoards):0,
        ((Float_t)rawStreamTrig.GetRegEoWErrors())/16.,
        ((Float_t)rawStreamTrig.GetGlobalEoWErrors())/6.,
        ((Float_t)rawStreamTrig.GetDarcEoWErrors())/2.
index bd12a75..dd39993 100644 (file)
@@ -266,7 +266,8 @@ AliMpDCSNamer::DCS2DE(Int_t chId, Int_t side, Int_t dcsNumber) const
     }
     else if ( side == 1 ) // right -> Inside
     {
-      de = (13 + dcsNumber) % nofDE;
+      if (nofDE>0)
+       de = (13 + dcsNumber) % nofDE;
     }
   }
   
@@ -358,7 +359,8 @@ AliMpDCSNamer::DetElemId2DCS(Int_t detElemId, Int_t& side, Int_t &chId) const
       }
       else {
        side = 1;
-       dcsNumber = (5 + dcsNumber) % nofDE;
+       if (nofDE>0)
+         dcsNumber = (5 + dcsNumber) % nofDE;
       }
       AliDebug(10, Form("detElemId %i  -> MT%i_side%i_L%i", detElemId, chId, side, dcsNumber));
     }
index d18d800..203c246 100644 (file)
@@ -241,7 +241,9 @@ Bool_t AliPHOSRawFitterv4::Eval(const UShort_t *signal, Int_t sigStart, Int_t si
     return kTRUE;
   }
   Double_t c1 = (np*sxy - sx*sy)/det;  //slope
-  Double_t c0 = (sy-c1*sx)/np; //offset
+  Double_t c0 = 0;
+  if (np>0)
+    c0 = (sy-c1*sx)/np; //offset
   if(c1 == 0){
     return kTRUE;
   }
index 1740211..9a3be50 100644 (file)
@@ -963,7 +963,8 @@ Bool_t AliTRDgtuTMU::CalculatePID(AliTRDtrackGTU *track)
       pidSum += trk->GetPID();
       nTracklets++;
     }
-    track->SetPID(pidSum/nTracklets);
+    if (nTracklets>0)
+      track->SetPID(pidSum/nTracklets);
 
     return kTRUE;
   }
index 7aefe9a..7450e98 100644 (file)
@@ -479,7 +479,9 @@ void AliTRDmcmSim::Draw(Option_t* const option)
       Float_t padWidth = 0.635 + 0.03 * (fDetector % 6);
       Float_t offset   = padWidth/256. * ((((((fRobPos & 0x1) << 2) + (fMcmPos & 0x3)) * 18) << 8) - ((18*4*2 - 18*2 - 3) << 7)); // revert adding offset in FitTracklet
       Int_t   ndrift   = fTrapConfig->GetDmemUnsigned(AliTRDtrapConfig::fgkDmemAddrNdrift, fDetector, fRobPos, fMcmPos) >> 5;
-      Float_t slope    = trkl->GetdY() * 140e-4 / ndrift;
+      Float_t slope    = 0;
+      if (ndrift)
+       slope = trkl->GetdY() * 140e-4 / ndrift;
 
       Int_t t0 = fTrapConfig->GetTrapReg(AliTRDtrapConfig::kTPFS, fDetector, fRobPos, fMcmPos);
       Int_t t1 = fTrapConfig->GetTrapReg(AliTRDtrapConfig::kTPFE, fDetector, fRobPos, fMcmPos);
@@ -2405,12 +2407,14 @@ void AliTRDmcmSim::PrintPidLutHuman()
    std::cout << "nBinsQ0: " << nBinsQ0 << std::endl;
    std::cout << "LUT table length: " << fTrapConfig->GetDmemUnsigned(AliTRDtrapConfig::fgkDmemAddrLUTLength) << std::endl;
 
-   for(UInt_t addr=AliTRDtrapConfig::fgkDmemAddrLUTStart; addr< addrEnd; addr++) {
-      result = fTrapConfig->GetDmemUnsigned(addr);
-      std::cout << addr << " # x: " << ((addr-AliTRDtrapConfig::fgkDmemAddrLUTStart)%((nBinsQ0)/4))*4 << ", y: " <<(addr-AliTRDtrapConfig::fgkDmemAddrLUTStart)/(nBinsQ0/4)
-               << "  #  " <<((result>>0)&0xFF)
-               << " | "  << ((result>>8)&0xFF)
-               << " | "  << ((result>>16)&0xFF)
-               << " | "  << ((result>>24)&0xFF) << std::endl;
+   if (nBinsQ0>0) {
+     for(UInt_t addr=AliTRDtrapConfig::fgkDmemAddrLUTStart; addr< addrEnd; addr++) {
+       result = fTrapConfig->GetDmemUnsigned(addr);
+       std::cout << addr << " # x: " << ((addr-AliTRDtrapConfig::fgkDmemAddrLUTStart)%((nBinsQ0)/4))*4 << ", y: " <<(addr-AliTRDtrapConfig::fgkDmemAddrLUTStart)/(nBinsQ0/4)
+                << "  #  " <<((result>>0)&0xFF)
+                << " | "  << ((result>>8)&0xFF)
+                << " | "  << ((result>>16)&0xFF)
+                << " | "  << ((result>>24)&0xFF) << std::endl;
+     }
    }
 }