I'm too lazy to comment this
Original commit message from CVS: Fix #106709 - waiting for approval in 0.6.1 - patch thanks to Peter N Lundblad <lundblad@linux.nu>
This commit is contained in:
parent
8307214acf
commit
cb0e1dd5d8
@ -306,6 +306,20 @@ gst_osssrc_get (GstPad *pad)
|
|||||||
|
|
||||||
buf = gst_buffer_new_and_alloc (src->buffersize);
|
buf = gst_buffer_new_and_alloc (src->buffersize);
|
||||||
|
|
||||||
|
if (!GST_PAD_CAPS (pad)) {
|
||||||
|
/* nothing was negotiated, we can decide on a format */
|
||||||
|
if (!gst_osssrc_negotiate (pad)) {
|
||||||
|
gst_buffer_unref (buf);
|
||||||
|
gst_element_error (GST_ELEMENT (src), "could not negotiate format");
|
||||||
|
return GST_BUFFER (gst_event_new (GST_EVENT_INTERRUPT));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (src->common.bps == 0) {
|
||||||
|
gst_buffer_unref (buf);
|
||||||
|
gst_element_error (GST_ELEMENT (src), "no format negotiated");
|
||||||
|
return GST_BUFFER (gst_event_new (GST_EVENT_INTERRUPT));
|
||||||
|
}
|
||||||
|
|
||||||
readbytes = read (src->common.fd,GST_BUFFER_DATA (buf),
|
readbytes = read (src->common.fd,GST_BUFFER_DATA (buf),
|
||||||
src->buffersize);
|
src->buffersize);
|
||||||
if (readbytes < 0) {
|
if (readbytes < 0) {
|
||||||
@ -321,20 +335,6 @@ gst_osssrc_get (GstPad *pad)
|
|||||||
return GST_BUFFER (gst_event_new (GST_EVENT_INTERRUPT));
|
return GST_BUFFER (gst_event_new (GST_EVENT_INTERRUPT));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!GST_PAD_CAPS (pad)) {
|
|
||||||
/* nothing was negotiated, we can decide on a format */
|
|
||||||
if (!gst_osssrc_negotiate (pad)) {
|
|
||||||
gst_buffer_unref (buf);
|
|
||||||
gst_element_error (GST_ELEMENT (src), "could not negotiate format");
|
|
||||||
return GST_BUFFER (gst_event_new (GST_EVENT_INTERRUPT));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (src->common.bps == 0) {
|
|
||||||
gst_buffer_unref (buf);
|
|
||||||
gst_element_error (GST_ELEMENT (src), "no format negotiated");
|
|
||||||
return GST_BUFFER (gst_event_new (GST_EVENT_INTERRUPT));
|
|
||||||
}
|
|
||||||
|
|
||||||
GST_BUFFER_SIZE (buf) = readbytes;
|
GST_BUFFER_SIZE (buf) = readbytes;
|
||||||
GST_BUFFER_OFFSET (buf) = src->curoffset;
|
GST_BUFFER_OFFSET (buf) = src->curoffset;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user