From 89572e84169557fe3c70b5de619c274ceaf7b028 Mon Sep 17 00:00:00 2001
From: Neil Brown <neilb@suse.de>
Date: Mon, 5 Jun 2006 12:36:52 +1000
Subject: [PATCH] Only treat '#' as starting a comment when at the start of a
 token

otherwise '#' in filenames cannot be read.
---
 ChangeLog         | 3 +++
 support/nfs/xio.c | 7 +++++--
 2 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 9cca4f9..ac8bc63 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -9,6 +9,9 @@
 	  escaped (as with quotes, spaces, etc.), so they won't be treated
 	  as a comment when they're read back in again.
 	        "Steinar H. Gunderson" <sesse@debian.org>
+	- Only treat '#' as starting a comment when at the start of a
+	  token, otherwise '#' in filenames cannot be read.
+	        NeilBrown	
 	
 2006-04-12 NeilBrown <neilb@suse.de>
 	Remove **/Makefile.in, aclocal.m4, configure, and
diff --git a/support/nfs/xio.c b/support/nfs/xio.c
index 4a3f181..1ce5157 100644
--- a/support/nfs/xio.c
+++ b/support/nfs/xio.c
@@ -95,6 +95,11 @@ xgettok(XFILE *xfp, char sepa, char *tok, int len)
 
 	while (i < len && (c = xgetc(xfp)) != EOF &&
 	       (quoted || (c != sepa && !isspace(c)))) {
+		if (!quoted && i == 0 && c == '#') {
+			c = xskipcomment(xfp);
+			xfp->x_line++;
+			break;
+		}
 		if (c == '"') {
 			quoted = !quoted;
 			continue;
@@ -138,8 +143,6 @@ xgetc(XFILE *xfp)
 		ungetc(c, xfp->x_fp);
 		return ' ';
 	}
-	if (c == '#')
-		c = xskipcomment(xfp);
 	if (c == '\n')
 		xfp->x_line++;
 	return c;
-- 
2.39.5