if (fr->t < 0 || fr->t > 1e20 || fr->step < 0 )
{
- gmx_fatal(FARGS, "edr file with negative step number or unreasonable time (and without version number)");
+ gmx_warning("edr file with negative step number or unreasonable time (and without version number).");
+ *bOK=FALSE;
+ return FALSE;
}
}
else
if (!gmx_fio_do_int(ef->fio, magic)) *bOK = FALSE;
if (magic != -7777777)
{
- gmx_fatal(FARGS,"Energy header magic number mismatch, this is not a GROMACS edr file");
+ gmx_warning("Energy header magic number mismatch, this is not a GROMACS edr file");
+ *bOK=FALSE;
+ return FALSE;
}
*file_version = enx_version;
if (!gmx_fio_do_int(ef->fio, *file_version)) *bOK = FALSE;
if (ndisre!=0)
{
if (*file_version >= 4)
- gmx_incons("Distance restraint blocks in old style in new style file");
+ {
+ gmx_warning("Distance restraint blocks in old style in new style file");
+ *bOK=FALSE;
+ return FALSE;
+ }
fr->nblock+=1;
}
else
{
if (fr->block[b].nsub != 1)
- gmx_incons("Writing an old version .edr file with too many subblocks");
+ {
+ gmx_warning("Writing an old version .edr file with too many subblocks");
+ *bOK=FALSE;
+ return FALSE;
+ }
if (fr->block[b].sub[0].type != dtreal)
{
- gmx_incons("Writing an old version .edr file the wrong subblock type");
+ gmx_warning("Writing an old version .edr file the wrong subblock type");
+ *bOK=FALSE;
+ return FALSE;
}
}
nrint = fr->block[b].sub[0].nr;
gmx_enxnm_t *nms=NULL;
int file_version=-1;
t_enxframe *fr;
- gmx_bool bWrongPrecision,bDum=TRUE;
+ gmx_bool bWrongPrecision,bOK=TRUE;
struct ener_file *ef;
snew(ef,1);
gmx_fio_setprecision(ef->fio,FALSE);
do_enxnms(ef,&nre,&nms);
snew(fr,1);
- do_eheader(ef,&file_version,fr,nre,&bWrongPrecision,&bDum);
- if(!bDum)
+ do_eheader(ef,&file_version,fr,nre,&bWrongPrecision,&bOK);
+ if(!bOK)
{
gmx_file("Cannot read energy file header. Corrupt file?");
}
gmx_fio_checktype(ef->fio);
gmx_fio_setprecision(ef->fio,TRUE);
do_enxnms(ef,&nre,&nms);
- do_eheader(ef,&file_version,fr,nre,&bWrongPrecision,&bDum);
- if(!bDum)
+ do_eheader(ef,&file_version,fr,nre,&bWrongPrecision,&bOK);
+ if(!bOK)
{
gmx_file("Cannot write energy file header; maybe you are out of quota?");
}