summaryrefslogtreecommitdiffstats
path: root/source/lib/talloc
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2007-09-12 21:41:36 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 12:30:41 -0500
commit93c42fd9b52d9135d8c8b52e97cf342c1c5b5010 (patch)
tree588612b534059bb9bdbfefd80cad395aef5c1be5 /source/lib/talloc
parent0c9a8c4dff10974dbffd2a302ae982896122fcc0 (diff)
downloadsamba-93c42fd9b52d9135d8c8b52e97cf342c1c5b5010.tar.gz
samba-93c42fd9b52d9135d8c8b52e97cf342c1c5b5010.tar.xz
samba-93c42fd9b52d9135d8c8b52e97cf342c1c5b5010.zip
r25116: Fix talloc_asprintf_append to do the right thing with
truncated strings. Jeremy.
Diffstat (limited to 'source/lib/talloc')
-rw-r--r--source/lib/talloc/talloc.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/source/lib/talloc/talloc.c b/source/lib/talloc/talloc.c
index c073a8c7743..c3e5d2c076b 100644
--- a/source/lib/talloc/talloc.c
+++ b/source/lib/talloc/talloc.c
@@ -1226,8 +1226,7 @@ char *talloc_asprintf(const void *t, const char *fmt, ...)
* accumulating output into a string buffer.
**/
char *talloc_vasprintf_append(char *s, const char *fmt, va_list ap)
-{
- struct talloc_chunk *tc;
+{
int len, s_len;
va_list ap2;
char c;
@@ -1236,9 +1235,7 @@ char *talloc_vasprintf_append(char *s, const char *fmt, va_list ap)
return talloc_vasprintf(NULL, fmt, ap);
}
- tc = talloc_chunk_from_ptr(s);
-
- s_len = tc->size - 1;
+ s_len = strlen(s);
va_copy(ap2, ap);
len = vsnprintf(&c, 1, fmt, ap2);