summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>2012-07-04 12:49:28 +0200
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2012-10-20 21:21:35 +0200
commitdd91236537427f7cae68b08d4b39926ef4cafe74 (patch)
tree2651dad80930f3d505cd751cfb589fb2df9daa19
parent1922132a4facf53e71855fb3624ab29da99a6fe3 (diff)
v4l2-pool: Initialize buffer indexes when creating the pool
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
-rw-r--r--isp/v4l2-pool.c4
-rw-r--r--isp/v4l2.c1
2 files changed, 4 insertions, 1 deletions
diff --git a/isp/v4l2-pool.c b/isp/v4l2-pool.c
index b0bf3b5..e002552 100644
--- a/isp/v4l2-pool.c
+++ b/isp/v4l2-pool.c
@@ -29,6 +29,7 @@ struct v4l2_buffers_pool *v4l2_buffers_pool_new(unsigned int nbufs)
{
struct v4l2_video_buffer *buffers;
struct v4l2_buffers_pool *pool;
+ unsigned int i;
pool = malloc(sizeof *pool);
if (pool == NULL)
@@ -42,6 +43,9 @@ struct v4l2_buffers_pool *v4l2_buffers_pool_new(unsigned int nbufs)
memset(buffers, 0, sizeof *buffers * nbufs);
+ for (i = 0; i < nbufs; ++i)
+ buffers[i].index = i;
+
pool->nbufs = nbufs;
pool->buffers = buffers;
diff --git a/isp/v4l2.c b/isp/v4l2.c
index 75e90b1..bd35ae9 100644
--- a/isp/v4l2.c
+++ b/isp/v4l2.c
@@ -650,7 +650,6 @@ int v4l2_dequeue_buffer(struct v4l2_device *dev, struct v4l2_video_buffer *buffe
}
*buffer = dev->pool->buffers[buf.index];
- buffer->index = buf.index;
buffer->bytesused = buf.bytesused;
buffer->timestamp = buf.timestamp;
buffer->error = !!(buf.flags & V4L2_BUF_FLAG_ERROR);