On 12/25/05, Greg Hudson <ghudson@mit.edu> wrote:
> On Sat, 2005-12-24 at 14:37 -0600, dionisos@tigris.org wrote:
> > +svn_stream_t * svn_stream_from_aprfile2 (apr_file_t *file,
> > + svn_boolean_t disown,
> > + apr_pool_t *pool);
>
> I don't like having this flag here, and I continue not to understand
> what's wrong with just creating an svn_stream_from_aprfile and disowning
> it. (You answered me when I raised the question before, and I didn't
> understand your answer, and I dropped the ball at that point.)
>
> What's so special about this particular stacked stream constructor that
> it requires a disown flag?
The fact that it's not stacked on top of another stream (which could
be disowned by svn_stream_disown), but on top of an APR file. We have
no other means to disown an APR file.
The situation I was looking at libsvn_client/diff.c:348 where the
diff_content_changed callback is called with a baton containing files,
not streams. The files themselves are not opened, so it's not up to
the callback to do opening / closing of these files.
bye,
Erik.
Received on Mon Jan 2 20:56:16 2006