diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/expand.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/expand.c b/src/expand.c index 800011e..b2800c6 100644 --- a/src/expand.c +++ b/src/expand.c @@ -976,9 +976,12 @@ param: size_t partlen; partlen = strlen(p); - len += partlen; - if (len > partlen && sep) { + + if (!(subtype == VSPLUS || subtype == VSLENGTH)) + memtodest(p, partlen, syntax, quotes); + + if (*ap && sep) { char *q; len++; @@ -991,9 +994,6 @@ param: STPUTC(sep, q); expdest = q; } - - if (!(subtype == VSPLUS || subtype == VSLENGTH)) - memtodest(p, partlen, syntax, quotes); } return len; case '0': |