Messages in this thread | | | Date | Thu, 7 Dec 2006 16:04:25 -0800 (PST) | From | David Rientjes <> | Subject | Re: [PATCH 2.6.19] drivers/media/video/cpia2/cpia2_usb.c: Free previously allocated memory (in array elements) if kmalloc() returns NULL. |
| |
On Fri, 8 Dec 2006, Mariusz Kozlowski wrote:
> > --- a/drivers/media/video/cpia2/cpia2_usb.c > > +++ b/drivers/media/video/cpia2/cpia2_usb.c > > @@ -640,6 +640,10 @@ static int submit_urbs(struct camera_dat > > cam->sbuf[i].data = > > kmalloc(FRAMES_PER_DESC * FRAME_SIZE_PER_DESC, GFP_KERNEL); > > if (!cam->sbuf[i].data) { > > + for (--i; i >= 0; i--) { > > + kfree(cam->sbuf[i].data); > > + cam->sbuf[i].data = NULL; > > + } > > return -ENOMEM; > > } > > } > > Just for future. Shorter and more readable version of your for(...) thing: > > while (i--) { > ... > } >
No, that is not equivalent.
You want while (i-- >= 0) { ... } - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |