Since blocks are not on both directions, we need to check in the block callback
if we are not blocking on an upstream event and let it pass.
g_cond_signal (blocked_cond);
g_mutex_unlock (blocked_lock);
+ if (GST_IS_EVENT (type_data) && GST_EVENT_IS_UPSTREAM (type_data))
+ return GST_PAD_PROBE_PASS;
+
return GST_PAD_PROBE_OK;
}
signal_data_signal (data);
GST_DEBUG ("signal done %p", data);
+ if (GST_IS_EVENT (type_data) && GST_EVENT_IS_UPSTREAM (type_data))
+ return GST_PAD_PROBE_PASS;
+
return GST_PAD_PROBE_OK;
}