summaryrefslogtreecommitdiff
path: root/src/xsvf/xsvf.c
diff options
context:
space:
mode:
authorAndreas Fritiofson <andreas.fritiofson@gmail.com>2009-11-24 21:24:06 +0100
committerZachary T Welch <zw@superlucidity.net>2009-11-24 12:48:02 -0800
commit338a674faa96ae321560efa3f1b1e8122d61aac4 (patch)
treec5ceee16364ea110d55d1e15abc19aca84c7d8d6 /src/xsvf/xsvf.c
parent5507b5f430e3d6bef00a7ffcd51df29c13d7477e (diff)
downloadopenocd_libswd-338a674faa96ae321560efa3f1b1e8122d61aac4.tar.gz
openocd_libswd-338a674faa96ae321560efa3f1b1e8122d61aac4.tar.bz2
openocd_libswd-338a674faa96ae321560efa3f1b1e8122d61aac4.tar.xz
openocd_libswd-338a674faa96ae321560efa3f1b1e8122d61aac4.zip
improve alloc_vprintf
The previous implementation was unnecessarily complex. Get rid of the loops, let vsnprintf() tell us directly how much storage we need and allocate that. A second pass writes the actual string. Also add a va_end() that was missing. This should be much faster for large strings and less wasteful for small ones. A quirk that has been retained is that some callers patch in a newline at the end of the returned string and depend on alloc_vprintf to allocate at least one byte extra. Signed-off-by: Andreas Fritiofson <andreas.fritiofson@gmail.com> Signed-off-by: Zachary T Welch <zw@superlucidity.net>
Diffstat (limited to 'src/xsvf/xsvf.c')
0 files changed, 0 insertions, 0 deletions