Jason Evans <jas...@freebsd.org> wrote: > Fabian Keil wrote: > > RĂ©mi Denis-Courmont, one of the vlc developers, pointed out > > that passing a zero size to posix_memalign() should actually > > work, though: > > > > | In principle, while useless, there is no reason why allocating an empty > > | picture should not be possible. posix_memalign() does support zero-length > > | allocation anyway: > > | > > http://www.opengroup.org/onlinepubs/9699919799/functions/posix_memalign.html > > | | If the size of the space requested is 0, the behavior is > > | | implementation-defined; the value returned in memptr shall be either a > > | | null pointer or a unique pointer. > > Standards: So many to choose from. This behavior for posix_memalign was > only defined as of the 2008 standard (see the Issue 7 notes for > posix_memalign): > > https://www.opengroup.org/austin/interps/uploads/40/14543/AI-152.txt > > Such requirements are unfortunate, because they induce a performance > penalty for every call, just so that programs can avoid proper handling > of edge cases in the rare situations for which such edge cases are a > real possibility. > > I will add the pessimization to posix_memalign once the 8.0 freeze is > over. It will be quite some time before this behavior becomes > ubiquitous, so in the meanwhile it's probably a good idea to modify vlc > to avoid such allocation requests.
Great, thanks. I agree and will forward the vlc patch to the maintainer of the FreeBSD port if getting it committed upstream fails. Fabian
signature.asc
Description: PGP signature