about summary refs log tree commit diff
path: root/Src/glob.c
diff options
context:
space:
mode:
authorTanaka Akira <akr@users.sourceforge.net>2000-03-01 10:08:02 +0000
committerTanaka Akira <akr@users.sourceforge.net>2000-03-01 10:08:02 +0000
commit137c94144cb236363f7af4ac86801fefde96d495 (patch)
treea77b839d007d26fb46f182957273a25ad4998569 /Src/glob.c
parent76d90bd5649c6e0bf02f94d8fe75a7a94ae95b20 (diff)
downloadzsh-137c94144cb236363f7af4ac86801fefde96d495.tar.gz
zsh-137c94144cb236363f7af4ac86801fefde96d495.tar.xz
zsh-137c94144cb236363f7af4ac86801fefde96d495.zip
zsh-workers/9947
Diffstat (limited to 'Src/glob.c')
-rw-r--r--Src/glob.c22
1 files changed, 14 insertions, 8 deletions
diff --git a/Src/glob.c b/Src/glob.c
index 05bfbbafb..c457e97ac 100644
--- a/Src/glob.c
+++ b/Src/glob.c
@@ -2327,16 +2327,22 @@ mod_export void
 remnulargs(char *s)
 {
     if (*s) {
-	char *t = s, *p = s, c;
+	char *o = s, c;
 
 	while ((c = *s++))
-	    if (!INULL(c))
-		*p++ = c;
-	*p = '\0';
-	if (!*t) {
-	    t[0] = Nularg;
-	    t[1] = '\0';
-	}
+	    if (INULL(c)) {
+		char *t = s - 1;
+
+		while ((c = *s++))
+		    if (!INULL(c))
+			*t++ = c;
+		*t = '\0';
+		if (!*o) {
+		    o[0] = Nularg;
+		    o[1] = '\0';
+		}
+		break;
+	    }
     }
 }