diff options
author | Peter Stephenson <pws@users.sourceforge.net> | 2011-12-03 23:15:37 +0000 |
---|---|---|
committer | Peter Stephenson <pws@users.sourceforge.net> | 2011-12-03 23:15:37 +0000 |
commit | 74eed99c312de05e19b54ba6b5d37a0aeb4ba713 (patch) | |
tree | f30c88f86868eaecc78a917f105fb99be507cc3b /Src/utils.c | |
parent | 724fd07a67f135c74eba57e9f25fd342201ec722 (diff) | |
download | zsh-74eed99c312de05e19b54ba6b5d37a0aeb4ba713.tar.gz zsh-74eed99c312de05e19b54ba6b5d37a0aeb4ba713.tar.xz zsh-74eed99c312de05e19b54ba6b5d37a0aeb4ba713.zip |
29940: metafy() added null termination even if buffer was not modifiable
Diffstat (limited to 'Src/utils.c')
-rw-r--r-- | Src/utils.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/Src/utils.c b/Src/utils.c index 6c2ea98d5..014cb2fa2 100644 --- a/Src/utils.c +++ b/Src/utils.c @@ -3959,7 +3959,7 @@ metafy(char *buf, int len, int heap) if (imeta(*e++)) meta++; - if (meta || heap == META_DUP || heap == META_HEAPDUP) { + if (meta || heap == META_DUP || heap == META_HEAPDUP || *e != '\0') { switch (heap) { case META_REALLOC: buf = zrealloc(buf, len + meta + 1); @@ -4002,8 +4002,8 @@ metafy(char *buf, int len, int heap) meta--; } } + *e = '\0'; } - *e = '\0'; return buf; } |