oggstream: don't call NULL setup functions
authorWim Taymans <wim.taymans@collabora.co.uk>
Thu, 21 Jan 2010 16:31:13 +0000 (17:31 +0100)
committerWim Taymans <wim.taymans@collabora.co.uk>
Thu, 21 Jan 2010 16:39:51 +0000 (17:39 +0100)
If we find a known mapper but it doesn't have a setup function, simply skip it
instead of crashing.

ext/ogg/gstoggstream.c

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