From: Wolfgang Bangerth Date: Sun, 1 Oct 2017 22:03:42 +0000 (-0600) Subject: Simplify the logic during parallel::distributed mesh refinement. X-Git-Tag: v9.0.0-rc1~998^2~1 X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d6ead24790f3d67fb2a64f2c5c9c3cf109c5473b;p=dealii.git 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. --- 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