oggstream: don't call NULL setup functions

If we find a known mapper but it doesn't have a setup function, simply skip it
instead of crashing.
This commit is contained in:
Wim Taymans 2010-01-21 17:31:13 +01:00
parent 4ed58b5882
commit 06e2d2791b

View file

@ -1282,7 +1282,14 @@ gst_ogg_stream_setup_map (GstOggStream * pad, ogg_packet * packet)
if (packet->bytes >= mappers[i].min_packet_size && if (packet->bytes >= mappers[i].min_packet_size &&
packet->bytes >= mappers[i].id_length && packet->bytes >= mappers[i].id_length &&
memcmp (packet->packet, mappers[i].id, mappers[i].id_length) == 0) { memcmp (packet->packet, mappers[i].id, mappers[i].id_length) == 0) {
GST_DEBUG ("found mapper for '%s'", mappers[i].id);
if (mappers[i].setup_func)
ret = mappers[i].setup_func (pad, packet); ret = mappers[i].setup_func (pad, packet);
else
continue;
if (ret) { if (ret) {
GST_DEBUG ("got stream type %" GST_PTR_FORMAT, pad->caps); GST_DEBUG ("got stream type %" GST_PTR_FORMAT, pad->caps);
pad->map = i; pad->map = i;