From d6ead24790f3d67fb2a64f2c5c9c3cf109c5473b Mon Sep 17 00:00:00 2001 From: Wolfgang Bangerth Date: Sun, 1 Oct 2017 16:03:42 -0600 Subject: [PATCH] Simplify the logic during parallel::distributed mesh refinement. Specifically, rather than let a function call itself recursively and catch that, make sure we call the function of the base class right away. --- source/distributed/tria.cc | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/source/distributed/tria.cc b/source/distributed/tria.cc index 0812303743..9a58141f05 100644 --- a/source/distributed/tria.cc +++ b/source/distributed/tria.cc @@ -2561,7 +2561,7 @@ namespace parallel try { - this->execute_coarsening_and_refinement(); + dealii::Triangulation::execute_coarsening_and_refinement(); } catch (const typename Triangulation::DistortedCellList &) { @@ -2682,7 +2682,7 @@ namespace parallel try { - this->execute_coarsening_and_refinement(); + dealii::Triangulation::execute_coarsening_and_refinement(); } catch (const typename Triangulation::DistortedCellList &) { @@ -2835,11 +2835,7 @@ namespace parallel Triangulation::execute_coarsening_and_refinement () { // first make sure that recursive calls are handled correctly - if (refinement_in_progress == true) - { - dealii::Triangulation::execute_coarsening_and_refinement (); - return; - } + Assert (refinement_in_progress == false, ExcInternalError()); // do not allow anisotropic refinement #ifdef DEBUG -- 2.39.5