Explorar o código

BUG: ctkVTKHistogram crashed when the data array was 0

Julien Finet %!s(int64=15) %!d(string=hai) anos
pai
achega
89c6b7d654
Modificáronse 1 ficheiros con 10 adicións e 1 borrados
  1. 10 1
      Libs/Visualization/VTK/Core/ctkVTKHistogram.cpp

+ 10 - 1
Libs/Visualization/VTK/Core/ctkVTKHistogram.cpp

@@ -303,12 +303,21 @@ void populateIrregularBins(vtkIntArray* bins, const ctkVTKHistogram* histogram)
 void ctkVTKHistogram::build()
 {
   CTK_D(ctkVTKHistogram);
-  
+
+  if (d->DataArray.GetPointer() == 0)
+    {
+    d->MinBin = 0;
+    d->MaxBin = 0;
+    d->Bins->SetNumberOfTuples(0);
+    return;
+    }
+
   const int binCount = d->computeNumberOfBins();
 
   d->Bins->SetNumberOfComponents(1);
   d->Bins->SetNumberOfTuples(binCount);
 
+
   if (static_cast<double>(binCount) != (d->Range[1] - d->Range[2]))
     {
     switch(d->DataArray->GetDataType())