On Mon, 13 Nov 2023 at 08:59, David Hildenbrand <da...@redhat.com> wrote: > > On 09.11.23 17:02, Maciej S. Szmigiero wrote: > > From: "Maciej S. Szmigiero" <maciej.szmigi...@oracle.com> > > > > alloca() is frowned upon, replace it with g_malloc0() + g_autofree. > > > > Reviewed-by: David Hildenbrand <da...@redhat.com> > > If this fixes a coverity issue of #number, we usually indicate that > using "CID: #number" or Fixes: CID: #number"
It won't actually fix the CID, though -- the Coverity issue is because Coverity doesn't understand that if you allocate memory for a struct with a single-element array + something extra then it's OK to index off the apparent end of the array because the extra memory is there. Switching the allocation from alloca to g_malloc won't change that, because we're still walking off the end of the defined struct. I don't personally like that coding pattern partly because of this, but I'm assuming we're dealing with somebody else's API here. Using a proper standard variable-length-array rather than a one element array might also help, but again, I'm guessing we don't have that flexibility to change it. thanks -- PMM