Selaa lähdekoodia

Fix for possible null DcmObject

Didn't happen with older dcmtk (3.6), but appears to happen
with newer versions so check for it.
Steve Pieper 13 vuotta sitten
vanhempi
commit
7c4be0fb51
1 muutettua tiedostoa jossa 9 lisäystä ja 6 poistoa
  1. 9 6
      Libs/DICOM/Core/ctkDICOMDatabase.cpp

+ 9 - 6
Libs/DICOM/Core/ctkDICOMDatabase.cpp

@@ -468,12 +468,15 @@ void ctkDICOMDatabase::loadFileHeader (QString fileName)
       while (dataset->nextObject(stack, true) == EC_Normal)
         {
           DcmObject *dO = stack.top();
-          QString tag = QString("%1,%2").arg(
-                dO->getGTag(),4,16,QLatin1Char('0')).arg(
-                dO->getETag(),4,16,QLatin1Char('0'));
-          std::ostringstream s;
-          dO->print(s);
-          d->LoadedHeader[tag] = QString(s.str().c_str());
+          if (dO)
+            {
+              QString tag = QString("%1,%2").arg(
+                    dO->getGTag(),4,16,QLatin1Char('0')).arg(
+                    dO->getETag(),4,16,QLatin1Char('0'));
+              std::ostringstream s;
+              dO->print(s);
+              d->LoadedHeader[tag] = QString(s.str().c_str());
+            }
         }
     }
   return;