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

Re: svn commit: r1676535 - /subversion/trunk/subversion/tests/libsvn_subr/io-test.c

From: Philip Martin <philip.martin_at_wandisco.com>
Date: Tue, 28 Apr 2015 16:32:21 +0100

Ivan Zhakov <ivan_at_visualsvn.com> writes:

>>> SVN_ERR(svn_stream__create_for_install(&stream, deep_dir, pool, pool));
>>> SVN_ERR(svn_stream_puts(stream, "stream1 content"));
>>> + SVN_ERR(svn_stream_close(stream));
>>> SVN_ERR(svn_stream__install_stream(stream,
>>> final_abspath,
>>> TRUE,
>>
>>
>> Um, surely that can't be right? Using the stream after it's been closed?
>>
> I'm also find this behavior a little bit confusing, but this is how it
> works now: install_stream should be closed before installing. Windows
> implementation perform flush on close, while unix implementation
> closes the file handle. The current callers (run_file_install in
> workqueue.c:587) also closes install_stream before installing it.

While svn_stream__install_stream doesn't explicitly document that a
closed stream can be passed it is part of the documentation for
svn_stream__install_get_info.

The documentation for svn_stream__create_for_install appears to have got
mangled:

   Creates as *INSTALL_STREAM a stream that once completed can be installed
   using Windows checkouts much slower than Unix.

What does "can be installed using Windows checkouts much slower than
Unix" mean?

-- 
Philip Martin | Subversion Committer
WANdisco // *Non-Stop Data*
Received on 2015-04-28 17:32:58 CEST

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

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.