gst/gdp/gstgdpdepay.c: Don't validate the payload if there isn't any.
authorEdward Hervey <bilboed@bilboed.com>
Fri, 18 Apr 2008 14:54:01 +0000 (14:54 +0000)
committerTim-Philipp Müller <tim@centricular.net>
Tue, 11 Sep 2012 00:54:32 +0000 (01:54 +0100)
Original commit message from CVS:
* gst/gdp/gstgdpdepay.c: (gst_gdp_depay_chain):
Don't validate the payload if there isn't any.
Fixes #525915

gst/gdp/gstgdpdepay.c

index 1341b37..644ae3b 100644 (file)
@@ -260,8 +260,8 @@ gst_gdp_depay_chain (GstPad * pad, GstBuffer * buffer)
         this->header = header;
 
         GST_LOG_OBJECT (this,
-            "read GDP header, payload size %d, switching to state PAYLOAD",
-            this->payload_length);
+            "read GDP header, payload size %d, payload type %d, switching to state PAYLOAD",
+            this->payload_length, this->payload_type);
         this->state = GST_GDP_DEPAY_STATE_PAYLOAD;
         break;
       }
@@ -288,8 +288,9 @@ gst_gdp_depay_chain (GstPad * pad, GstBuffer * buffer)
           goto wrong_type;
         }
 
-        if (!gst_dp_validate_payload (GST_DP_HEADER_LENGTH, this->header,
-                gst_adapter_peek (this->adapter, this->payload_length))) {
+        if (this->payload_length
+            && (!gst_dp_validate_payload (GST_DP_HEADER_LENGTH, this->header,
+                    gst_adapter_peek (this->adapter, this->payload_length)))) {
           goto payload_validate_error;
         }