diff --git a/ChangeLog b/ChangeLog
index 17244711526e91394d810b4be0db1e1f60149d0e..00426b33773de9b991c2d00d1de8f5c5750c2c0a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2016-02-28  Benno Schulenberg  <bensberg@justemail.net>
+	* src/rcfile.c (parse_header_exp): Don't continue when something is
+	wrong -- skip the rest of the line.  This fixes Savannah bug #47289.
+
 2016-02-26  Benno Schulenberg  <bensberg@justemail.net>
 	* doc/man/nanorc.5, doc/texinfo/nano.texi, doc/syntax/nanorc.nanorc,
 	doc/nanorc.sample.in: Correct the description of 'justifytrim', add
diff --git a/src/rcfile.c b/src/rcfile.c
index 6b03e6acc68f8a8607808ccbf0fa31dacd57e7d7..53e221dee663ba5803c4ba846189620ded77f063 100644
--- a/src/rcfile.c
+++ b/src/rcfile.c
@@ -880,8 +880,7 @@ void parse_header_exp(char *ptr)
 	if (*ptr != '"') {
 	    rcfile_error(
 		N_("Regex strings must begin and end with a \" character"));
-	    ptr = parse_next_regex(ptr);
-	    continue;
+	    return;
 	}
 
 	ptr++;