diff options
author | allen <allen@17b73243-c579-4c4c-a9d2-2d5706c11dac> | 2001-12-04 10:53:03 +0000 |
---|---|---|
committer | allen <allen@17b73243-c579-4c4c-a9d2-2d5706c11dac> | 2001-12-04 10:53:03 +0000 |
commit | b06dbf62ce5079af010dcbd42a1e73101079e746 (patch) | |
tree | 82d2df518abe9515a60dabe49e656eb9d051e5ae /src/main/ProcessParameterDatabase.c | |
parent | 8d532a917cedb5e0af9f623c273265939fbda01d (diff) |
Fixes for Cactus/833,828,825
Parsing errors from Parameter file are fatal errors
Report all parameter errors before terminating simulation (actually
this isn't quite true, it will report all parsing errors and then stop if
necessary and
then report all parameter setting errors and stop if necessary)
In parsing the parameter file omitting the
"=" and ommiting the "= value" are fatal errors.
git-svn-id: http://svn.cactuscode.org/flesh/trunk@2478 17b73243-c579-4c4c-a9d2-2d5706c11dac
Diffstat (limited to 'src/main/ProcessParameterDatabase.c')
-rw-r--r-- | src/main/ProcessParameterDatabase.c | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/src/main/ProcessParameterDatabase.c b/src/main/ProcessParameterDatabase.c index 20737769..195e49ff 100644 --- a/src/main/ProcessParameterDatabase.c +++ b/src/main/ProcessParameterDatabase.c @@ -75,8 +75,11 @@ void CCTKi_SetParameterSetMask(int mask); int CCTKi_ProcessParameterDatabase(tFleshConfig *ConfigData) { int retval; + int parse_errors; FILE *parameter_file; + parse_errors = 0; + CCTKi_SetParameterSetMask(PARAMETER_RECOVERY_PRE); if(!strcmp(ConfigData->parameter_file_name,"-")) @@ -90,12 +93,34 @@ int CCTKi_ProcessParameterDatabase(tFleshConfig *ConfigData) if(parameter_file) { - ParseFile(parameter_file, CCTKi_SetParameter, ConfigData); + parse_errors = ParseFile(parameter_file, CCTKi_SetParameter, ConfigData); if(strcmp(ConfigData->parameter_file_name,"-")) { fclose(parameter_file); } + + if (parse_errors) + { + CCTK_VWarn(0,__LINE__,__FILE__,"Cactus", + "CCTKi_SetParameterSetMask: %d parsing errors in " + "parameter file",parse_errors); + } + + if (CCTKi_NumParameterFileErrors(1)) + { + CCTK_VWarn(1,__LINE__,__FILE__,"Cactus", + "CCTKi_SetParameterSetMask: %d level 1 errors in " + "parameter file",CCTKi_NumParameterFileErrors(1)); + } + + if (CCTKi_NumParameterFileErrors(0)) + { + CCTK_VWarn(0,__LINE__,__FILE__,"Cactus", + "CCTKi_SetParameterSetMask: %d level 0 errors in " + "parameter file",CCTKi_NumParameterFileErrors(0)); + } + retval = 0; } else |