From 5bcc1e2b57c851e54feeabdc303c18c6ca71a1f0 Mon Sep 17 00:00:00 2001 From: Edward Hervey Date: Mon, 30 Oct 2017 11:10:11 +0100 Subject: [PATCH] typefind: Use GST_READ_UINT32 macros Avoids undefined behaviour with shifting --- gst/typefind/gsttypefindfunctions.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gst/typefind/gsttypefindfunctions.c b/gst/typefind/gsttypefindfunctions.c index c9a2c756b8..839ee4f4c4 100644 --- a/gst/typefind/gsttypefindfunctions.c +++ b/gst/typefind/gsttypefindfunctions.c @@ -264,9 +264,9 @@ check_utf32 (const guint8 * data, gint len, gint endianness) while (len > 3) { guint32 v; if (endianness == G_BIG_ENDIAN) - v = (data[0] << 24) | (data[1] << 16) | (data[2] << 8) | data[3]; + v = GST_READ_UINT32_BE (data); else - v = (data[3] << 24) | (data[2] << 16) | (data[1] << 8) | data[0]; + v = GST_READ_UINT32_LE (data); if (v >= 0x10FFFF) return FALSE; data += 4;