From: Michael R. <mr...@us...> - 2004-05-26 17:06:03
|
Hi Barry, > > I do not understand how this patch fixes a memory leak. I have > > not yet looked > > closer into it, but maybe you can enlighten me with some more > > explaining. ;) > > Using the audio loop as an example of the bug. You will notice that > the while loop continues if next != NULL. The last element in the > queue always has NULL in the next field. Result is the loop exits > before freeing the last element. The video loop has the same bug. Ok. I should have looked closer. Of course you are right. I committed this part of your patch to CVS. For the other part, I have some questions: * Why is the ioctl(fd, VIDIOCGCHAN, &this->video_channel) issued twice now? Once by the condition of the for-loop and once again inside the loop. To me, the whole "ret = ioctl(...); if (ret != 0) break;" looks obsolete. * At the end of the loop, you check for "strlen(input_source) < 0". Isn't that always false? Michael -- This message transmitted on 100% recycled electrons |