]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
Fix crash that occurred after switching to git. In some circumstances (checkout a...
authorwiechula <Jens.Wiechula@cern.ch>
Sat, 22 Feb 2014 17:03:50 +0000 (18:03 +0100)
committerAlina Grigoras <alina.gabriela.grigoras@cern.ch>
Mon, 24 Feb 2014 11:28:29 +0000 (12:28 +0100)
STEER/STEERBase/AliProdInfo.cxx

index 2ad6162572e6185f6575ab230cd0fd71e7ea90d9..366d2560f822cc260aab55bd09e3bce170860721 100644 (file)
@@ -110,13 +110,25 @@ void AliProdInfo::ParseProdInfo(TNamed *prodInfoData) {
     if (stObj->GetString().Contains("aliroot") && (i==0) ) {  // aliroot version
       TObjArray *tali = (TObjArray *)stObj->GetString().Tokenize(":");
       TObjString *tos = (TObjString *)tali->At(0);
-      TObjArray *tali2 = (TObjArray *)tos->GetString().Tokenize(" ");
-      TObjString *av = (TObjString *)tali2->At(1);
-      fAlirootVersion=av->GetString().Data();
-      TObjString *ts = (TObjString*)tali->At(1); 
-      fAlirootSvnVersion = ts->GetString().Atoi();
+      fAlirootVersion="";
+      if (tos) {
+        TObjArray *tali2 = (TObjArray *)tos->GetString().Tokenize(" ");
+        TObjString *av = (TObjString *)tali2->At(1);
+        if (av) fAlirootVersion=av->GetString().Data();
+        else AliWarning("Cannot extract AliROOT version string. Might be git related.");
+        delete tali2;
+      }
+      
+      TObjString *ts = (TObjString*)tali->At(1);
+      if (ts){
+        if (ts->GetString().IsDigit()){
+          fAlirootSvnVersion = ts->GetString().Atoi();
+        } else {
+          AliWarning("Version number not numeric, might be on git. Using last svn rev number (65263) instead.");
+          fAlirootSvnVersion=65263;
+        }
+      }
       delete tali;
-      delete tali2;
     }
     else if (stObj->GetString().Contains("root") && (i==1) ) {  // root version
       TObjArray *tali = (TObjArray *)stObj->GetString().Tokenize(":");