apr-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Greg Stein <gst...@lyra.org>
Subject Re: cvs commit: apr STATUS
Date Sun, 04 Feb 2001 22:34:25 GMT
On Sun, Feb 04, 2001 at 01:54:52PM -0800, rbb@covalent.net wrote:
> 
> >   +    * I think apr_open_stderr() and friends dup() the descriptor. That
> >   +      would allow the new/returned file to be closed (via pool cleanup
> >   +      or manually) without accidentally closing stderr/out.
> 
> The goal of those functions is to actually get stderr, stdout, stdin into
> an apr_file_t.  The only reason they exist, is because Windows requires an
> extra function to get stderr, stdout, stdin when we use native file
> types.  If you want to dup them, then that should be done by you
> explicitly.  There is no reason to cause that extra call for programs that
> know they don't want to do the dup.

Subversion makes ample use of subpools. If the apr_file_t for stderr was
placed into a subpool, then the thing would get closed when a pool cleanup
occurred.

And I can't dup the file after it has been placed into an apr_file_t. The
first will continue to exist, and would get closed on cleanup.

Creating an apr_file_t for stderr/out/in is fine, but that cleanup is a
problem, and the dup is the only solution that I've figured out so far.
Other ideas are welcome; it certainly won't be "soon" that I get into that
code to do the dup... we have time.

Cheers,
-g

-- 
Greg Stein, http://www.lyra.org/

Mime
View raw message