avio: fix fourcc if any character is >=0x80.
authorRonald S. Bultje <rsbultje@gmail.com>
Fri, 4 Mar 2011 13:33:49 +0000 (08:33 -0500)
committerRonald S. Bultje <rsbultje@gmail.com>
Fri, 4 Mar 2011 13:33:49 +0000 (08:33 -0500)
Fixes issue 2638.

libavformat/avio_internal.h

index 3b38990..279c7f6 100644 (file)
@@ -42,6 +42,9 @@ int ffio_read_partial(AVIOContext *s, unsigned char *buf, int size);
 
 void ffio_fill(AVIOContext *s, int b, int count);
 
-#define ffio_wfourcc(pb, str) avio_wl32(pb, MKTAG((str)[0], (str)[1], (str)[2], (str)[3]))
+static av_always_inline void ffio_wfourcc(AVIOContext *pb, const uint8_t *s)
+{
+    avio_wl32(pb, MKTAG(s[0], s[1], s[2], s[3]));
+}
 
 #endif // AVFORMAT_AVIO_INTERNAL_H