diff options
author | Nicolas George <nicolas.george@normalesup.org> | 2012-10-28 14:40:30 +0100 |
---|---|---|
committer | Nicolas George <nicolas.george@normalesup.org> | 2012-11-02 15:12:29 +0100 |
commit | 483c1aa5f114bfed36a6e1c9eeb1e647124559f7 (patch) | |
tree | b62362ceb28084bd7ba8855a6a5c75feee128c0b /libavutil/bprint.c | |
parent | 8551c6bec0fd6cf719f94b24bca39b1c3318e213 (diff) | |
download | ffmpeg-483c1aa5f114bfed36a6e1c9eeb1e647124559f7.tar.gz |
lavu/bprint: add av_bprint_get_buffer().
It is useful to use bprint to handle a growing buffer
used with another API.
Diffstat (limited to 'libavutil/bprint.c')
-rw-r--r-- | libavutil/bprint.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/libavutil/bprint.c b/libavutil/bprint.c index 373a492af0..9d8e7c18ab 100644 --- a/libavutil/bprint.c +++ b/libavutil/bprint.c @@ -129,6 +129,15 @@ void av_bprint_chars(AVBPrint *buf, char c, unsigned n) av_bprint_grow(buf, n); } +void av_bprint_get_buffer(AVBPrint *buf, unsigned size, + unsigned char **mem, unsigned *actual_size) +{ + if (size > av_bprint_room(buf)) + av_bprint_alloc(buf, size); + *actual_size = av_bprint_room(buf); + *mem = *actual_size ? buf->str + buf->len : NULL; +} + void av_bprint_clear(AVBPrint *buf) { if (buf->len) { |