On 12/6/2017 12:36 AM, Jacob Trimble wrote: > Would a 0-length array work? Otherwise I would need to have it be a > 1-length array and have to account for that when calculating the size > to allocate; it would also require a comment to ignore the size of the > array.
Aren't 0-length arrays a GNU extensions? If so, I would gather that it probably is not OK in a public header, either. > The reason I want it to be an array is because I want a variable > number of elements, but I want the data contained in the struct. > Since this will be extra data, AFAIK it will only be free()'d, so I > can't use pointers or it will leak. > > Another alternative would be to still malloc more than needed and have > the memory past the struct be the array. That seems like a hack, but > would allow a simple free(). For example: I'm not entirely sure what way we prefer nowadays, but you can see we've had side data with variable length members before with e.g. AV_PKT_DATA_QUALITY_STATS, but that doesn't have a struct associated with it. I'm hoping someone more up to date with the side data stuff can chime in with a suggestion on what our current best practices are for it. - Derek _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel