diff options
author | Hans de Goede <hdegoede@redhat.com> | 2008-12-11 11:02:18 +0300 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2008-12-30 14:39:02 +0300 |
commit | d473a002399ff8cd168012f831aca7691d5f5086 (patch) | |
tree | 07a87ec7a71461375cec90648c6629f773375e44 /drivers/media/video | |
parent | 11d9f25da89523d19dba3608d51a86af2954fc0d (diff) | |
download | linux-d473a002399ff8cd168012f831aca7691d5f5086.tar.xz |
V4L/DVB (9878): gspca - vc032x: Fix frame overflow errors with vc0321.
The vc0321 sends some additional data after sending the complete
frame, we ignore this.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/video')
-rw-r--r-- | drivers/media/video/gspca/vc032x.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/media/video/gspca/vc032x.c b/drivers/media/video/gspca/vc032x.c index 8f553bfbac0b..4556348f96e9 100644 --- a/drivers/media/video/gspca/vc032x.c +++ b/drivers/media/video/gspca/vc032x.c @@ -2272,6 +2272,12 @@ static void sd_pkt_scan(struct gspca_dev *gspca_dev, data, len); return; } + + /* The vc0321 sends some additional data after sending the complete + * frame, we ignore this. */ + if (sd->bridge == BRIDGE_VC0321 + && len > frame->v4l2_buf.length - (frame->data_end - frame->data)) + len = frame->v4l2_buf.length - (frame->data_end - frame->data); gspca_frame_add(gspca_dev, INTER_PACKET, frame, data, len); } |