[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: problem with 'svn diff -r FOO:BAR' over ra_svn

From: Greg Hudson <ghudson_at_MIT.EDU>
Date: 2003-01-04 06:40:03 CET

On Sat, 2003-01-04 at 00:01, Greg Hudson wrote:
> I will figure out the appropriate APR magic to set the file descriptors
> close-on-exec.

Easier said than done, it seems.

APR doesn't know about FD_CLOEXEC, presumably because there's no
non-Unix analog. It does have child cleanups (cleanups which get run in
apr_proc_create() after the fork and before the exec), which it sets up
inconsistently for different kinds of apr_file objects. Most file
objects are set up to be closed in the child (which creates a
double-buffer-flushing bug I've mentioned in the past; we may have to
add some flushes to avoid that). Pipe file objects are set up without a
child cleanup handler--a little odd, since apr_proc_create() has special
logic to avoid triggering those child cleanups.

It seems like apr_file should have a flag for whether a file object gets
cleaned up in the child process (and the child cleanups should be
special routines which don't flush buffers). But that sounds like a lot
of work. In the meantime, I guess we should set up our own child
cleanups on the pipes.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Sat Jan 4 06:40:48 2003

This is an archived mail posted to the Subversion Dev mailing list.