From d08d72a05d84f6687cdb853f685d84f5cc5ecf2d Mon Sep 17 00:00:00 2001
From: Benno Schulenberg <bensberg@justemail.net>
Date: Fri, 11 Mar 2016 16:51:15 +0000
Subject: [PATCH] Checking for an open syntax first, before checking it is
 named "default".

git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@5721 35c25a1d-7b9e-4130-9fde-d3aeb78583b8
---
 ChangeLog    |  2 ++
 src/rcfile.c | 10 +++++-----
 2 files changed, 7 insertions(+), 5 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 758061fa..86b413d8 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -3,6 +3,8 @@
 	--enable-tiny plus --enable-browser.
 	* src/rcfile.c: Tweak some comments and reshuffle some lines.
 	* src/rcfile.c (color_to_short): Elide a variable.
+	* src/rcfile.c (grab_and_store): First check that there is an
+	open syntax before checking that it is named "default".
 
 2016-03-10  Benno Schulenberg  <bensberg@justemail.net>
 	* src/rcfile.c (grab_and_store): Do not accept 'header" and 'magic'
diff --git a/src/rcfile.c b/src/rcfile.c
index 87cb186f..cdf112e3 100644
--- a/src/rcfile.c
+++ b/src/rcfile.c
@@ -797,16 +797,16 @@ void grab_and_store(const char *kind, char *ptr, regexlisttype **storage)
 {
     regexlisttype *lastthing;
 
-    /* The default syntax doesn't take any file matching stuff. */
-    if (strcmp(live_syntax->name, "default") == 0 && *ptr != '\0') {
+    if (!opensyntax) {
 	rcfile_error(
-		N_("The \"default\" syntax does not accept '%s' regexes"), kind);
+		N_("A '%s' command requires a preceding 'syntax' command"), kind);
 	return;
     }
 
-    if (!opensyntax) {
+    /* The default syntax doesn't take any file matching stuff. */
+    if (strcmp(live_syntax->name, "default") == 0 && *ptr != '\0') {
 	rcfile_error(
-		N_("A '%s' command requires a preceding 'syntax' command"), kind);
+		N_("The \"default\" syntax does not accept '%s' regexes"), kind);
 	return;
     }
 
-- 
GitLab