aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorschnetter <schnetter@20f44201-0f4f-0410-9130-e5fc2714a787>2005-05-27 12:26:05 +0000
committerschnetter <schnetter@20f44201-0f4f-0410-9130-e5fc2714a787>2005-05-27 12:26:05 +0000
commit9a640c92e7194882f3f4d79091b44be1d2c5103b (patch)
treed6ee6e881eac53d0b988e92a5242fbb28632f15c
parent9454ab75b084f4f59fe362a85dbdb8ea3193d922 (diff)
Handle the case of 0 variables; just return in this case.
Output fewer warnings. git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/RotatingSymmetry180/trunk@22 20f44201-0f4f-0410-9130-e5fc2714a787
-rw-r--r--src/rotatingsymmetry180.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/rotatingsymmetry180.c b/src/rotatingsymmetry180.c
index d37ca5b..ad2476a 100644
--- a/src/rotatingsymmetry180.c
+++ b/src/rotatingsymmetry180.c
@@ -73,6 +73,9 @@ int BndRot180VI (cGH const * restrict const cctkGH,
}
}
+ /* Return early if there is nothing to do */
+ if (nvars == 0) return 0;
+
/* Get and check group info */
assert (nvars>0);
gis = malloc (nvars * sizeof *gis);
@@ -125,6 +128,21 @@ int BndRot180VI (cGH const * restrict const cctkGH,
(table, sizeof tensortypealias, tensortypealias, "tensortypealias");
if (ierr == UTIL_ERROR_TABLE_NO_SUCH_KEY) {
/* assume a scalar */
+ if (numvars != 1) {
+ static int * restrict didwarn = 0;
+ if (! didwarn) {
+ didwarn = calloc (CCTK_NumGroups(), sizeof *didwarn);
+ }
+ if (! didwarn[gis[var]]) {
+ didwarn[gis[var]] = 1;
+ char * groupname = CCTK_GroupName(gis[var]);
+ assert (groupname);
+ CCTK_VWarn (2, __LINE__, __FILE__, CCTK_THORNSTRING,
+ "Group \"%s\" has no tensor type and contains more than one element -- treating these as \"scalar\"",
+ groupname);
+ free (groupname);
+ }
+ }
strcpy (tensortypealias, "scalar");
} else if (ierr<0) {
char * groupname = CCTK_GroupName(gis[var]);