> On 6 Sep 2022, at 16:12, Tom Lane <t...@sss.pgh.pa.us> wrote:
> 
> Daniel Gustafsson <dan...@yesql.se> writes:
>> Agreed, zero should be valid as it's a non-negative integer.  However, 
>> callers
>> in fd.c are themselves checking for (fd <= 0) in some cases, and some have 
>> done
>> so since the very early days of the codebase, so I wonder if there 
>> historically
>> used to be a platform which considered 0 an invalid fd?
> 
> I'm betting it's a thinko that never got caught because 0 would
> always be taken up by stdin.  Maybe you'd notice if you tried to
> close-and-reopen stdin, but that's not something the server ever does.

Doh, of course.  The attached is a quick (lightly make check tested) take on
allowing 0, but I'm not sure that's what we want?

--
Daniel Gustafsson               https://vmware.com/

Attachment: pathnameopenfile_fd0.diff
Description: Binary data

Reply via email to