goto too_small;
tag = GST_READ_UINT32_LE (info.data);
- if (tag != GST_RIFF_TAG_RIFF && tag != GST_RIFF_TAG_AVF0)
+ if (tag != GST_RIFF_TAG_RIFF && tag != GST_RIFF_TAG_AVF0
+ && tag != GST_RIFF_TAG_RF64)
goto not_riff;
*doctype = GST_READ_UINT32_LE (info.data + 8);
not_riff:
{
GST_ELEMENT_ERROR (element, STREAM, WRONG_TYPE, (NULL),
- ("Stream is no RIFF stream: %" GST_FOURCC_FORMAT,
- GST_FOURCC_ARGS (tag)));
+ ("Stream is no RIFF stream: 0x%" G_GINT32_MODIFIER "x", tag));
gst_buffer_unmap (buf, &info);
gst_buffer_unref (buf);
return FALSE;
if (info.size < sizeof (gst_riff_strh))
goto too_small;
- strh = g_memdup (info.data, info.size);
+ strh = g_memdup2 (info.data, info.size);
gst_buffer_unmap (buf, &info);
gst_buffer_unref (buf);
* containing extradata for this particular stream (e.g.
* palette, codec initialization data).
*
- * Parses a video stream´s strf structure plus optionally some
+ * Parses a video stream's strf structure plus optionally some
* extradata from input data. This function takes ownership of @buf.
*
* Returns: TRUE if parsing succeeded, otherwise FALSE. The stream
if (info.size < sizeof (gst_riff_strf_vids))
goto too_small;
- strf = g_memdup (info.data, info.size);
+ strf = g_memdup2 (info.data, info.size);
gst_buffer_unmap (buf, &info);
#if (G_BYTE_ORDER == G_BIG_ENDIAN)
* containing extradata for this particular stream (e.g.
* codec initialization data).
*
- * Parses an audio stream´s strf structure plus optionally some
+ * Parses an audio stream's strf structure plus optionally some
* extradata from input data. This function takes ownership of @buf.
* use.
*
if (info.size < sizeof (gst_riff_strf_auds))
goto too_small;
- strf = g_memdup (info.data, info.size);
+ strf = g_memdup2 (info.data, info.size);
#if (G_BYTE_ORDER == G_BIG_ENDIAN)
strf->format = GUINT16_FROM_LE (strf->format);
if (info.size < sizeof (gst_riff_strf_iavs))
goto too_small;
- strf = g_memdup (info.data, info.size);
+ strf = g_memdup2 (info.data, info.size);
gst_buffer_unmap (buf, &info);
gst_buffer_unref (buf);