From ac9827c09f3fae1457aac2f402d35f0ee7d85ede Mon Sep 17 00:00:00 2001 From: schnetter <> Date: Mon, 9 Feb 2004 15:48:00 +0000 Subject: Report a warning instead of aborting when the RegridLevel function Report a warning instead of aborting when the RegridLevel function returns an illegal number of levels. darcs-hash:20040209154843-07bb3-f92482392a8aa2b703a120e088a7b668cf08abae.gz --- Carpet/CarpetRegrid/src/regrid.cc | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) (limited to 'Carpet/CarpetRegrid') diff --git a/Carpet/CarpetRegrid/src/regrid.cc b/Carpet/CarpetRegrid/src/regrid.cc index 27cab87c4..37d6b466c 100644 --- a/Carpet/CarpetRegrid/src/regrid.cc +++ b/Carpet/CarpetRegrid/src/regrid.cc @@ -13,7 +13,7 @@ #include "regrid.hh" extern "C" { - static const char* rcsid = "$Header: /home/eschnett/C/carpet/Carpet/Carpet/CarpetRegrid/src/regrid.cc,v 1.36 2004/02/05 16:11:20 schnetter Exp $"; + static const char* rcsid = "$Header: /home/eschnett/C/carpet/Carpet/Carpet/CarpetRegrid/src/regrid.cc,v 1.37 2004/02/09 16:48:43 schnetter Exp $"; CCTK_FILEVERSION(Carpet_CarpetRegrid_regrid_cc); } @@ -110,13 +110,18 @@ namespace CarpetRegrid { } const int newnumlevels = RegridLevel (cctkGH, reflevel, refinement_levels, maxreflevels); - assert (newnumlevels>0 && newnumlevels<=maxreflevels); - - *const_cast(&refinement_levels) = newnumlevels; - ostringstream param; - param << refinement_levels; - CCTK_ParameterSet - ("refinement_levels", "CarpetRegrid", param.str().c_str()); + if (newnumlevels>0 && newnumlevels<=maxreflevels) { + + *const_cast(&refinement_levels) = newnumlevels; + ostringstream param; + param << refinement_levels; + CCTK_ParameterSet + ("refinement_levels", "CarpetRegrid", param.str().c_str()); + + } else { + CCTK_VWarn (1, __LINE__, __FILE__, CCTK_THORNSTRING, + "The aliased function \"RegridLevel\" returned an illegal number of refinement levels (%d). No levels will be activated or deactivated.", newnumlevels); + } } else { -- cgit v1.2.3