[FFmpeg-cvslog] lavu/bprint: add append buffer function
Lukasz Marek
git at videolan.org
Fri Aug 30 22:49:13 CEST 2013
ffmpeg | branch: master | Lukasz Marek <lukasz.m.luki at gmail.com> | Fri Aug 23 23:21:50 2013 +0200| [0b46d6f3efa7c647a42d3e77d09c274f611b752b] | committer: Michael Niedermayer
lavu/bprint: add append buffer function
Signed-off-by: Lukasz Marek <lukasz.m.luki at gmail.com>
Reveiwed-by: Nicolas George <nicolas.george at normalesup.org>
Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=0b46d6f3efa7c647a42d3e77d09c274f611b752b
---
libavutil/bprint.c | 18 ++++++++++++++++++
libavutil/bprint.h | 9 +++++++++
libavutil/version.h | 2 +-
3 files changed, 28 insertions(+), 1 deletion(-)
diff --git a/libavutil/bprint.c b/libavutil/bprint.c
index cd91bc4..7786e3b 100644
--- a/libavutil/bprint.c
+++ b/libavutil/bprint.c
@@ -155,6 +155,24 @@ void av_bprint_chars(AVBPrint *buf, char c, unsigned n)
av_bprint_grow(buf, n);
}
+void av_bprint_append_data(AVBPrint *buf, const char *data, unsigned size)
+{
+ unsigned room, real_n;
+
+ while (1) {
+ room = av_bprint_room(buf);
+ if (size < room)
+ break;
+ if (av_bprint_alloc(buf, size))
+ break;
+ }
+ if (room) {
+ real_n = FFMIN(size, room - 1);
+ memcpy(buf->str + buf->len, data, real_n);
+ }
+ av_bprint_grow(buf, size);
+}
+
void av_bprint_strftime(AVBPrint *buf, const char *fmt, const struct tm *tm)
{
unsigned room;
diff --git a/libavutil/bprint.h b/libavutil/bprint.h
index bb1de25..839ec1e 100644
--- a/libavutil/bprint.h
+++ b/libavutil/bprint.h
@@ -133,6 +133,15 @@ void av_vbprintf(AVBPrint *buf, const char *fmt, va_list vl_arg);
*/
void av_bprint_chars(AVBPrint *buf, char c, unsigned n);
+/**
+ * Append data to a print buffer.
+ *
+ * param buf bprint buffer to use
+ * param data pointer to data
+ * param size size of data
+ */
+void av_bprint_append_data(AVBPrint *buf, const char *data, unsigned size);
+
struct tm;
/**
* Append a formatted date and time to a print buffer.
diff --git a/libavutil/version.h b/libavutil/version.h
index e522b79..7aec9c0 100644
--- a/libavutil/version.h
+++ b/libavutil/version.h
@@ -75,7 +75,7 @@
*/
#define LIBAVUTIL_VERSION_MAJOR 52
-#define LIBAVUTIL_VERSION_MINOR 42
+#define LIBAVUTIL_VERSION_MINOR 43
#define LIBAVUTIL_VERSION_MICRO 100
#define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \
More information about the ffmpeg-cvslog
mailing list