summaryrefslogtreecommitdiff
path: root/Src/utils.c
diff options
context:
space:
mode:
Diffstat (limited to 'Src/utils.c')
-rw-r--r--Src/utils.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/Src/utils.c b/Src/utils.c
index 143855160..ba31a1315 100644
--- a/Src/utils.c
+++ b/Src/utils.c
@@ -1912,16 +1912,14 @@ zjoin(char **arr, int delim, int heap)
ptr = ret = (heap ? (char *) hcalloc(len) : (char *) zshcalloc(len));
for (s = arr; *s; s++) {
strucpy(&ptr, *s);
- if (delim) {
if (imeta(delim)) {
*ptr++ = Meta;
*ptr++ = delim ^ 32;
}
else
*ptr++ = delim;
- }
}
- ptr[-1] = '\0';
+ ptr[-1 - (imeta(delim) ? 1 : 0)] = '\0';
return ret;
}