From 1439016c20b6af70aae46412ebf9c8501289c82b Mon Sep 17 00:00:00 2001
From: Benno Schulenberg <bensberg@telfort.nl>
Date: Thu, 6 Jul 2017 21:59:40 +0200
Subject: [PATCH] tweaks: recognize the empty string as comment inhibitor,
 instead of NULL

---
 src/nano.h   | 2 ++
 src/rcfile.c | 8 +-------
 src/text.c   | 3 +--
 3 files changed, 4 insertions(+), 9 deletions(-)

diff --git a/src/nano.h b/src/nano.h
index 77420221..113512f6 100644
--- a/src/nano.h
+++ b/src/nano.h
@@ -220,8 +220,10 @@ typedef struct syntaxtype {
 	/* The command with which to lint this type of file. */
     char *formatter;
         /* The formatting command (for programming languages mainly). */
+#ifdef ENABLE_COMMENT
     char *comment;
 	/* The line comment prefix (and postfix) for this type of file. */
+#endif
     colortype *color;
 	/* The colors and their regexes used in this syntax. */
     int nmultis;
diff --git a/src/rcfile.c b/src/rcfile.c
index b19d3f73..6d7a20be 100644
--- a/src/rcfile.c
+++ b/src/rcfile.c
@@ -317,8 +317,6 @@ void parse_syntax(char *ptr)
     live_syntax->formatter = NULL;
 #ifdef ENABLE_COMMENT
     live_syntax->comment = mallocstrcpy(NULL, GENERAL_COMMENT_CHARACTER);
-#else
-    live_syntax->comment = NULL;
 #endif
     live_syntax->color = NULL;
     lastcolor = NULL;
@@ -894,11 +892,7 @@ void pick_up_name(const char *kind, char *ptr, char **storage)
 	*look = '\0';
     }
 
-    if (*ptr == '\0') {
-	free(*storage);
-	*storage = NULL;
-    } else
-	*storage = mallocstrcpy(*storage, ptr);
+    *storage = mallocstrcpy(*storage, ptr);
 
 }
 #endif /* !DISABLE_COLOR */
diff --git a/src/text.c b/src/text.c
index 95b540eb..1b9f3a69 100644
--- a/src/text.c
+++ b/src/text.c
@@ -470,8 +470,7 @@ void do_comment(void)
     if (openfile->syntax)
 	comment_seq = openfile->syntax->comment;
 
-    /* Does the syntax not allow comments? */
-    if (comment_seq == NULL) {
+    if (*comment_seq == '\0') {
 	statusbar(_("Commenting is not supported for this file type"));
 	return;
     }
-- 
GitLab