Date: Mon, 28 Jun 2010 20:20:03 GMT From: Jaakko Heinonen <jh@FreeBSD.org> To: freebsd-bugs@FreeBSD.org Subject: Re: kern/144307: ENOENT set unnecessarily under certain circumstances when malloc is called / fails Message-ID: <201006282020.o5SKK3OG063671@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR kern/144307; it has been noted by GNATS. From: Jaakko Heinonen <jh@FreeBSD.org> To: Garrett Cooper <gcooper@FreeBSD.org> Cc: bug-followup@freebsd.org Subject: Re: kern/144307: ENOENT set unnecessarily under certain circumstances when malloc is called / fails Date: Mon, 28 Jun 2010 23:10:11 +0300 On 2010-06-28, Garrett Cooper wrote: > Or the malloc(3) call could be fixed with the couple of lines I > noted (well, adlibbed of course... > > Which I agree with, but shouldn't we fix malloc(3) (and any other > function calls that depend on malloc(3) for sensible results)? It's not required for POSIX compliance at least. Did you actually read the quotes from POSIX? "The value of errno should only be examined when it is indicated to be valid by a function's return value." "The setting of errno after a successful call to a function is unspecified unless the description of that function specifies that errno shall not be modified." In other words the value of errno is undefined and shouldn't be examined unless malloc(3) returns NULL. -- Jaakko
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201006282020.o5SKK3OG063671>