aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/video/gspca/t613.c
diff options
context:
space:
mode:
authorJean-François Moine <moinejf@free.fr>2010-03-07 03:58:55 -0500
committerMauro Carvalho Chehab <mchehab@redhat.com>2010-05-17 23:46:28 -0400
commit24f222e77ad62e41b1a882c77feeb8268c80b909 (patch)
treeaecbfa66ccb227637620e322b76e43d0f0884bbd /drivers/media/video/gspca/t613.c
parent52897d86b1f0c8639e4b132b6b4ab1973694650f (diff)
V4L/DVB: gspca - t613: Check the result of kmalloc
Signed-off-by: Jean-François Moine <moinejf@free.fr> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/video/gspca/t613.c')
-rw-r--r--drivers/media/video/gspca/t613.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/drivers/media/video/gspca/t613.c b/drivers/media/video/gspca/t613.c
index 668a7536af90..8c7dadef8211 100644
--- a/drivers/media/video/gspca/t613.c
+++ b/drivers/media/video/gspca/t613.c
@@ -523,6 +523,10 @@ static void reg_w_buf(struct gspca_dev *gspca_dev,
523 u8 *tmpbuf; 523 u8 *tmpbuf;
524 524
525 tmpbuf = kmalloc(len, GFP_KERNEL); 525 tmpbuf = kmalloc(len, GFP_KERNEL);
526 if (!tmpbuf) {
527 err("Out of memory");
528 return;
529 }
526 memcpy(tmpbuf, buffer, len); 530 memcpy(tmpbuf, buffer, len);
527 usb_control_msg(gspca_dev->dev, 531 usb_control_msg(gspca_dev->dev,
528 usb_sndctrlpipe(gspca_dev->dev, 0), 532 usb_sndctrlpipe(gspca_dev->dev, 0),
@@ -542,10 +546,15 @@ static void reg_w_ixbuf(struct gspca_dev *gspca_dev,
542 int i; 546 int i;
543 u8 *p, *tmpbuf; 547 u8 *p, *tmpbuf;
544 548
545 if (len * 2 <= USB_BUF_SZ) 549 if (len * 2 <= USB_BUF_SZ) {
546 p = tmpbuf = gspca_dev->usb_buf; 550 p = tmpbuf = gspca_dev->usb_buf;
547 else 551 } else {
548 p = tmpbuf = kmalloc(len * 2, GFP_KERNEL); 552 p = tmpbuf = kmalloc(len * 2, GFP_KERNEL);
553 if (!tmpbuf) {
554 err("Out of memory");
555 return;
556 }
557 }
549 i = len; 558 i = len;
550 while (--i >= 0) { 559 while (--i >= 0) {
551 *p++ = reg++; 560 *p++ = reg++;