kate: do not consider an empty SPU to be a fatal error
authorVincent Penquerc'h <vincent.penquerch@collabora.co.uk>
Mon, 22 Aug 2011 16:10:24 +0000 (17:10 +0100)
committerSebastian Dröge <sebastian.droege@collabora.co.uk>
Tue, 23 Aug 2011 08:16:30 +0000 (10:16 +0200)
Instead, just encode nothing and go on.

https://bugzilla.gnome.org/show_bug.cgi?id=657091

ext/kate/gstkatespu.c

index ad2a038..4392916 100644 (file)
@@ -494,9 +494,14 @@ gst_kate_spu_decode_spu (GstKateEnc * ke, GstBuffer * buf, kate_region * kr,
   if (G_UNLIKELY (ke->spu_right - ke->spu_left < 0
           || ke->spu_bottom - ke->spu_top < 0 || ke->spu_pix_data[0] == 0
           || ke->spu_pix_data[1] == 0)) {
-    GST_ELEMENT_ERROR (ke, STREAM, ENCODE, (NULL),
-        ("SPU area is empty, nothing to encode"));
-    return GST_FLOW_ERROR;
+    GST_DEBUG_OBJECT (ke,
+        "left %d, right %d, top %d, bottom %d, pix data %d %d", ke->spu_left,
+        ke->spu_right, ke->spu_top, ke->spu_bottom, ke->spu_pix_data[0],
+        ke->spu_pix_data[1]);
+    GST_WARNING_OBJECT (ke, "SPU area is empty, nothing to encode");
+    kate_bitmap_init (kb);
+    kb->width = kb->height = 0;
+    return GST_FLOW_OK;
   }
 
   /* create the palette */