sys/v4l2/v4l2src_calls.c: Readd GST_ELEMENT_ERROR if we can't reenque buffers after EIO, fixes #407369

Original commit message from CVS:
* sys/v4l2/v4l2src_calls.c: (gst_v4l2src_fill_format_list),
(gst_v4l2src_grab_frame), (gst_v4l2src_set_capture),
(gst_v4l2src_capture_init):
Readd GST_ELEMENT_ERROR if we can't reenque buffers after EIO,
fixes #407369
This commit is contained in:
Stefan Kost 2007-02-19 12:22:43 +00:00
parent 71cf071f58
commit 2d1b42029a
2 changed files with 18 additions and 3 deletions

View file

@ -1,3 +1,11 @@
2007-02-19 Stefan Kost <ensonic@users.sf.net>
* sys/v4l2/v4l2src_calls.c: (gst_v4l2src_fill_format_list),
(gst_v4l2src_grab_frame), (gst_v4l2src_set_capture),
(gst_v4l2src_capture_init):
Readd GST_ELEMENT_ERROR if we can't reenque buffers after EIO,
fixes #407369
2007-02-18 Wim Taymans <wim@fluendo.com> 2007-02-18 Wim Taymans <wim@fluendo.com>
* gst/rtp/Makefile.am: * gst/rtp/Makefile.am:

View file

@ -194,9 +194,7 @@ gst_v4l2src_grab_frame (GstV4l2Src * v4l2src)
*/ */
GST_DEBUG_OBJECT (v4l2src, "reenqueing buffer"); GST_DEBUG_OBJECT (v4l2src, "reenqueing buffer");
if (ioctl (v4l2src->v4l2object->video_fd, VIDIOC_QBUF, &buffer) < 0) { if (ioctl (v4l2src->v4l2object->video_fd, VIDIOC_QBUF, &buffer) < 0) {
GST_WARNING_OBJECT (v4l2src, goto qbuf_failed;
"Error queueing buffer on device %s. system error: %s",
v4l2src->v4l2object->videodev, g_strerror (errno));
} }
/*} */ /*} */
} }
@ -255,6 +253,15 @@ too_many_trials:
NUM_TRIALS, v4l2src->v4l2object->videodev, g_strerror (errno))); NUM_TRIALS, v4l2src->v4l2object->videodev, g_strerror (errno)));
return -1; return -1;
} }
qbuf_failed:
{
GST_ELEMENT_ERROR (v4l2src, RESOURCE, WRITE,
(_("Could not exchange data with device '%s'."),
v4l2src->v4l2object->videodev),
("Error queueing buffer on device %s. system error: %s",
v4l2src->v4l2object->videodev, g_strerror (errno)));
return -1;
}
} }