> 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/
pathnameopenfile_fd0.diff
Description: Binary data