From 992292f8ae32d1eef9aa4f8ba1379f9be0a779f5 Mon Sep 17 00:00:00 2001
From: Edward Hervey <edward@centricular.com>
Date: Mon, 23 May 2016 15:57:04 +0200
Subject: [PATCH] pad-monitor: Don't check for DISCONT flags on buffer in
 pull-mode

It only makes sense in push-mode
---
 validate/gst/validate/gst-validate-pad-monitor.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/validate/gst/validate/gst-validate-pad-monitor.c b/validate/gst/validate/gst-validate-pad-monitor.c
index b523035ef7..60df39917f 100644
--- a/validate/gst/validate/gst-validate-pad-monitor.c
+++ b/validate/gst/validate/gst-validate-pad-monitor.c
@@ -2289,14 +2289,15 @@ gst_validate_pad_get_range_func (GstPad * pad, GstObject * parent,
 
 static gboolean
 gst_validate_pad_monitor_buffer_probe (GstPad * pad, GstBuffer * buffer,
-    gpointer udata)
+    gpointer udata, gboolean pull_mode)
 {
   GstValidatePadMonitor *monitor = udata;
 
   GST_VALIDATE_PAD_MONITOR_PARENT_LOCK (monitor);
   GST_VALIDATE_MONITOR_LOCK (monitor);
 
-  gst_validate_pad_monitor_check_discont (monitor, buffer);
+  if (!pull_mode)
+    gst_validate_pad_monitor_check_discont (monitor, buffer);
   gst_validate_pad_monitor_check_first_buffer (monitor, buffer);
   gst_validate_pad_monitor_update_buffer_data (monitor, buffer);
   gst_validate_pad_monitor_check_eos (monitor, buffer);
@@ -2451,7 +2452,8 @@ gst_validate_pad_monitor_pad_probe (GstPad * pad, GstPadProbeInfo * info,
     gpointer udata)
 {
   if (info->type & GST_PAD_PROBE_TYPE_BUFFER)
-    gst_validate_pad_monitor_buffer_probe (pad, info->data, udata);
+    gst_validate_pad_monitor_buffer_probe (pad, info->data, udata,
+        GST_PAD_PROBE_INFO_TYPE (info) & GST_PAD_PROBE_TYPE_PULL);
   else if (info->type & GST_PAD_PROBE_TYPE_EVENT_DOWNSTREAM)
     gst_validate_pad_monitor_event_probe (pad, info->data, udata);