From b52ae27edf392e5a0df95054d394d850b8e57d35 Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Wed, 13 Nov 2013 18:39:17 +0100 Subject: avio_put_str16le: Print error message in case of invalid UTF8 input Found-by: Stefano Sabatini Signed-off-by: Michael Niedermayer --- libavformat/aviobuf.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'libavformat/aviobuf.c') diff --git a/libavformat/aviobuf.c b/libavformat/aviobuf.c index dc0ed717fd..d54564ab3d 100644 --- a/libavformat/aviobuf.c +++ b/libavformat/aviobuf.c @@ -324,8 +324,11 @@ int avio_put_str16le(AVIOContext *s, const char *str) uint32_t ch; uint16_t tmp; - GET_UTF8(ch, *q++, break;) + GET_UTF8(ch, *q++, goto invalid;) PUT_UTF16(ch, tmp, avio_wl16(s, tmp); ret += 2;) + continue; +invalid: + av_log(s, AV_LOG_ERROR, "Invaid UTF8 sequence in avio_put_str16le\n"); } avio_wl16(s, 0); ret += 2; -- cgit v1.2.3