From 3993194e2c3f105c7f705ec1dba9b652269da3bb Mon Sep 17 00:00:00 2001 From: Erik Lindahl Date: Sun, 31 Dec 2017 14:20:10 +0100 Subject: [PATCH] Allow empty lines in hdb files Skip lines that consist only of whitespace. Not a universal solution for fixing hdb files, but better than the user getting very strange error messages that don't say anything about whitespace. Fixes #2028. Change-Id: I0962c89d0251f83da7fe0440efd31fb7ca468690 --- src/gromacs/gmxpreprocess/h_db.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/gromacs/gmxpreprocess/h_db.cpp b/src/gromacs/gmxpreprocess/h_db.cpp index 1c90db36ec..6e1a81f32c 100644 --- a/src/gromacs/gmxpreprocess/h_db.cpp +++ b/src/gromacs/gmxpreprocess/h_db.cpp @@ -3,7 +3,7 @@ * * Copyright (c) 1991-2000, University of Groningen, The Netherlands. * Copyright (c) 2001-2004, The GROMACS development team. - * Copyright (c) 2013,2014,2015,2016,2017, by the GROMACS development team, led by + * Copyright (c) 2013,2014,2015,2016,2017,2018, by the GROMACS development team, led by * Mark Abraham, David van der Spoel, Berk Hess, and Erik Lindahl, * and including many others, as listed in the AUTHORS file in the * top-level source directory and at http://www.gromacs.org. @@ -49,6 +49,7 @@ #include "gromacs/utility/fatalerror.h" #include "gromacs/utility/futil.h" #include "gromacs/utility/smalloc.h" +#include "gromacs/utility/stringutil.h" /* Number of control atoms for each 'add' type. * @@ -150,6 +151,11 @@ static void read_h_db_file(const char *hfn, int *nahptr, t_hackblock **ah) aah = *ah; while (fgets2(line, STRLEN-1, in)) { + // Skip lines that are only whitespace + if (gmx::countWords(line) == 0) + { + continue; + } if (sscanf(line, "%s%n", buf, &n) != 1) { fprintf(stderr, "Error in hdb file: nah = %d\nline = '%s'\n", -- 2.11.4.GIT