From: Eric Sunshine Date: Thu, 18 Jul 2013 20:49:47 GMT Subject: Re: [PATCH 1/2] git_mkstemps: correctly test return value of open() Message-ID: In-Reply-To: <201307182032.r6IKWtWC016218@freeze.ariadne.com> On Thu, Jul 18, 2013 at 4:32 PM, Dale R. Worley wrote: > I've been looking into writing a proper test for this patch. My first > attempt tests the symptom that was seen initially, that "git commit" > fails if fd 0 is closed. > > One problem is how to arrange for fd 0 to be closed. I could use the > bash redirection "<&-", but I think you want to be more portable than > that. This version uses execvp() inside a small C program, and > execvp() is a Posix function. "<&-" is POSIX. http://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#tag_18_07_05 > I've tested that this test does what it should: If you remove the > fix, "fd >= 0", the test fails. If you then remove "test-close-fd-0" > from before "git init" in the test, the test is nullified and succeeds > again. > > Here is the diff. What do people think of it?