diff options
| -rw-r--r-- | ChangeLog | 8 | ||||
| -rw-r--r-- | sys/v4l2/v4l2src_calls.c | 13 | 
2 files changed, 18 insertions, 3 deletions
@@ -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>  	* gst/rtp/Makefile.am: diff --git a/sys/v4l2/v4l2src_calls.c b/sys/v4l2/v4l2src_calls.c index fd956aeb..7eef5471 100644 --- a/sys/v4l2/v4l2src_calls.c +++ b/sys/v4l2/v4l2src_calls.c @@ -194,9 +194,7 @@ gst_v4l2src_grab_frame (GstV4l2Src * v4l2src)             */            GST_DEBUG_OBJECT (v4l2src, "reenqueing buffer");            if (ioctl (v4l2src->v4l2object->video_fd, VIDIOC_QBUF, &buffer) < 0) { -            GST_WARNING_OBJECT (v4l2src, -                "Error queueing buffer on device %s. system error: %s", -                v4l2src->v4l2object->videodev, g_strerror (errno)); +            goto qbuf_failed;            }            /*} */          } @@ -255,6 +253,15 @@ too_many_trials:              NUM_TRIALS, v4l2src->v4l2object->videodev, g_strerror (errno)));      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; +  }  }  | 
