[MOVED FROM GST-P-FARSIGHT] Fix deadlock on invalid timestamp error
20080428223606-3e2dc-963e48b33efaf84c16d4ec4b789a6dfb2d9358ad.gz
This commit is contained in:
parent
72efe4c3d7
commit
89566bfc8a
@ -798,13 +798,8 @@ gst_live_live_adder_chain (GstPad *pad, GstBuffer *buffer)
|
|||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!GST_BUFFER_TIMESTAMP_IS_VALID(buffer)) {
|
if (!GST_BUFFER_TIMESTAMP_IS_VALID(buffer))
|
||||||
GST_ELEMENT_ERROR (adder, STREAM, FAILED,
|
goto invalid_timestamp;
|
||||||
("Buffer without a valid timestamp received"), (""));
|
|
||||||
ret = GST_FLOW_ERROR;
|
|
||||||
gst_buffer_unref (buffer);
|
|
||||||
goto out;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Just see if we receive invalid timestamp/durations */
|
/* Just see if we receive invalid timestamp/durations */
|
||||||
if (GST_CLOCK_TIME_IS_VALID (padprivate->expected_timestamp) &&
|
if (GST_CLOCK_TIME_IS_VALID (padprivate->expected_timestamp) &&
|
||||||
@ -972,6 +967,16 @@ gst_live_live_adder_chain (GstPad *pad, GstBuffer *buffer)
|
|||||||
gst_object_unref (adder);
|
gst_object_unref (adder);
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
|
invalid_timestamp:
|
||||||
|
|
||||||
|
GST_OBJECT_UNLOCK (adder);
|
||||||
|
gst_buffer_unref (buffer);
|
||||||
|
GST_ELEMENT_ERROR (adder, STREAM, FAILED,
|
||||||
|
("Buffer without a valid timestamp received"),
|
||||||
|
("Invalid timestamp received on buffer"));
|
||||||
|
|
||||||
|
return GST_FLOW_ERROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
Loading…
x
Reference in New Issue
Block a user