2005-01-31 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
+ * gst/gstbin.c: (gst_bin_child_state_change_func):
+ Remove a piece of code that could never be reached.
+ * docs/gst/gstreamer-sections.txt:
+ * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
+ (gst_pad_call_get_function):
+ * gst/gstpad.h:
+ * testsuite/pad/Makefile.am:
+ Fix #150546, enable tests.
+
+2005-01-31 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
+
* docs/pwg/advanced-types.xml:
Fix description for buffer-frames=0.
* docs/gst/tmpl/gstbin.sgml:
bin->child_states[new_idx]++;
for (i = GST_NUM_STATES - 1; i >= 0; i--) {
- if (bin->child_states[i] != 0 || i == 0) {
+ if (bin->child_states[i] != 0) {
gint state = (1 << i);
/* We only change state on the parent if the state is not locked.
g_return_if_fail (GST_IS_PAD (pad));
g_return_if_fail (GST_PAD_DIRECTION (pad) == GST_PAD_SRC);
+ g_return_if_fail (!GST_FLAG_IS_SET (GST_PAD_REALIZE (pad),
+ GST_RPAD_IN_GETFUNC));
g_return_if_fail (data != NULL);
DEBUG_DATA (pad, data, "gst_pad_push");
g_return_val_if_fail (GST_PAD_DIRECTION (pad) == GST_PAD_SINK,
GST_DATA (gst_event_new (GST_EVENT_INTERRUPT)));
+ g_return_val_if_fail (!GST_FLAG_IS_SET (GST_PAD_REALIZE (pad),
+ GST_RPAD_IN_CHAINFUNC),
+ GST_DATA (gst_event_new (GST_EVENT_INTERRUPT)));
peer = GST_RPAD_PEER (pad);
!GST_FLAG_IS_SET (gst_pad_get_parent (pad), GST_ELEMENT_EVENT_AWARE)) { \
gst_pad_send_event (pad, GST_EVENT (__temp)); \
} else { \
+ GST_FLAG_SET (pad, GST_RPAD_IN_CHAINFUNC); \
GST_RPAD_CHAINFUNC (pad) (pad, __temp); \
+ GST_FLAG_UNSET (pad, GST_RPAD_IN_CHAINFUNC); \
} \
}G_STMT_END
/**
g_return_val_if_fail (GST_PAD_IS_SRC (pad), NULL);
g_return_val_if_fail (GST_RPAD_GETFUNC (pad) != NULL, NULL);
+ GST_FLAG_SET (pad, GST_RPAD_IN_GETFUNC);
data = GST_RPAD_GETFUNC (pad) (pad);
+ GST_FLAG_UNSET (pad, GST_RPAD_IN_GETFUNC);
DEBUG_DATA (pad, data, "getfunction returned");
return data;
}