diff options
author | Mauro Carvalho Chehab <mchehab@redhat.com> | 2010-06-07 12:10:14 -0300 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2010-08-02 14:06:00 -0300 |
commit | d0669c872ff68cac5ab312569e716c12171440a9 (patch) | |
tree | ae661bc1f1c9500ca891e0310fdb1dd6bc77deff /drivers/staging/tm6000 | |
parent | 23ba94633db4311f06f57f0f53d6715feab6a018 (diff) | |
download | kernel_samsung_tuna-d0669c872ff68cac5ab312569e716c12171440a9.zip kernel_samsung_tuna-d0669c872ff68cac5ab312569e716c12171440a9.tar.gz kernel_samsung_tuna-d0669c872ff68cac5ab312569e716c12171440a9.tar.bz2 |
V4L/DVB: tm6000: Fix copybuf continue logic
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/staging/tm6000')
-rw-r--r-- | drivers/staging/tm6000/tm6000-video.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/staging/tm6000/tm6000-video.c b/drivers/staging/tm6000/tm6000-video.c index 6bf2b13..9a0b5a7 100644 --- a/drivers/staging/tm6000/tm6000-video.c +++ b/drivers/staging/tm6000/tm6000-video.c @@ -285,7 +285,7 @@ static int copy_streams(u8 *data, unsigned long len, break; case TM6000_URB_MSG_AUDIO: case TM6000_URB_MSG_PTS: - cpysize = pktsize; /* Size is always 180 bytes */ + size = pktsize; /* Size is always 180 bytes */ break; } } else { @@ -315,7 +315,7 @@ static int copy_streams(u8 *data, unsigned long len, break; } } - if (ptr + pktsize > endp) { + if (cpysize < size) { /* End of URB packet, but cmd processing is not * complete. Preserve the state for a next packet */ @@ -323,7 +323,7 @@ static int copy_streams(u8 *data, unsigned long len, dev->isoc_ctl.size = size - cpysize; dev->isoc_ctl.cmd = cmd; dev->isoc_ctl.pktsize = pktsize - (endp - ptr); - ptr += endp - ptr; + ptr += cpysize; } else { dev->isoc_ctl.cmd = 0; ptr += pktsize; |