From e710c1cce811026e23460335b3ceac29bd0babe2 Mon Sep 17 00:00:00 2001 From: Christoph Rettinger <christoph.rettinger@fau.de> Date: Tue, 18 May 2021 08:41:59 +0200 Subject: [PATCH] Fixed possible divide by zero in mesh vtk writer and added case to test --- src/mesh_common/vtk/VTKMeshWriter.h | 2 +- tests/mesh/MeshVTKTest.cpp | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/mesh_common/vtk/VTKMeshWriter.h b/src/mesh_common/vtk/VTKMeshWriter.h index 1cbac3eed..5d6822c39 100644 --- a/src/mesh_common/vtk/VTKMeshWriter.h +++ b/src/mesh_common/vtk/VTKMeshWriter.h @@ -106,7 +106,7 @@ public: inline bool isFaceFilterSet() const { return static_cast<bool>(faceFilter_); } void incrementTimeStep() { ++timestep_; } - bool isWriteScheduled() const { return timestep_ % writeFrequency_ == 0; } + bool isWriteScheduled() const { return writeFrequency_ > 0 && timestep_ % writeFrequency_ == 0; } protected: void write( std::ostream & os ) const; diff --git a/tests/mesh/MeshVTKTest.cpp b/tests/mesh/MeshVTKTest.cpp index c602adc9d..e7efb707c 100644 --- a/tests/mesh/MeshVTKTest.cpp +++ b/tests/mesh/MeshVTKTest.cpp @@ -150,6 +150,11 @@ void test( const std::string & meshFile ) meshWriterStatusfiltered.setFaceFilter( mesh::StatusFaceFilter< MeshType >( OpenMesh::Attributes::TAGGED ) ); meshWriterStatusfiltered(); + + + VTKMeshWriter< MeshType > meshWriterDeactivated( mesh, "mesh_vtk_test_deactivated", 0 ); + + meshWriterDeactivated(); } -- GitLab