You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by cm...@apache.org on 2012/05/08 20:56:07 UTC
svn commit: r1335695 - in /subversion/trunk/subversion: include/svn_io.h
libsvn_subr/stream.c libsvn_wc/adm_ops.c
Author: cmpilato
Date: Tue May 8 18:56:07 2012
New Revision: 1335695
URL: http://svn.apache.org/viewvc?rev=1335695&view=rev
Log:
Follow-up to r1335566:
* subversion/include/svn_io.h,
* subversion/libsvn_subr/stream.c
(svn_stream_lazyopen_create): Tweak function signature and behavior
to just return the stream directly (rather than an error).
* subversion/libsvn_wc/adm_ops.c
(svn_wc__get_pristine_contents_by_checksum): Update call to
svn_stream_lazyopen_create().
Suggested by: gstein
Modified:
subversion/trunk/subversion/include/svn_io.h
subversion/trunk/subversion/libsvn_subr/stream.c
subversion/trunk/subversion/libsvn_wc/adm_ops.c
Modified: subversion/trunk/subversion/include/svn_io.h
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/include/svn_io.h?rev=1335695&r1=1335694&r2=1335695&view=diff
==============================================================================
--- subversion/trunk/subversion/include/svn_io.h (original)
+++ subversion/trunk/subversion/include/svn_io.h Tue May 8 18:56:07 2012
@@ -1341,9 +1341,9 @@ typedef svn_error_t *
apr_pool_t *scratch_pool);
-/** Set @a *stream to a generic stream which wraps another primary
- * stream, delaying the "opening" of that stream until the first time
- * the stream is accessed.
+/** Return a generic stream which wraps another primary stream,
+ * delaying the "opening" of that stream until the first time the
+ * stream is accessed.
*
* @a open_func and @a open_baton are a callback function/baton pair
* invoked upon the first read of @a *stream which are used to open the
@@ -1351,9 +1351,8 @@ typedef svn_error_t *
*
* @since New in 1.8.
*/
-svn_error_t *
-svn_stream_lazyopen_create(svn_stream_t **stream,
- svn_stream_lazyopen_func_t open_func,
+svn_stream_t *
+svn_stream_lazyopen_create(svn_stream_lazyopen_func_t open_func,
void *open_baton,
apr_pool_t *result_pool);
Modified: subversion/trunk/subversion/libsvn_subr/stream.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_subr/stream.c?rev=1335695&r1=1335694&r2=1335695&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_subr/stream.c (original)
+++ subversion/trunk/subversion/libsvn_subr/stream.c Tue May 8 18:56:07 2012
@@ -1780,27 +1780,26 @@ seek_handler_lazyopen(void *baton,
return SVN_NO_ERROR;
}
-/* Implements svn_stream_stream_fn_t */
-svn_error_t *
-svn_stream_lazyopen_create(svn_stream_t **stream,
- svn_stream_lazyopen_func_t open_func,
+svn_stream_t *
+svn_stream_lazyopen_create(svn_stream_lazyopen_func_t open_func,
void *open_baton,
apr_pool_t *result_pool)
{
lazyopen_baton_t *lob = apr_pcalloc(result_pool, sizeof(*lob));
+ svn_stream_t *stream;
lob->open_func = open_func;
lob->open_baton = open_baton;
lob->real_stream = NULL;
lob->pool = result_pool;
- *stream = svn_stream_create(lob, result_pool);
- svn_stream_set_read(*stream, read_handler_lazyopen);
- svn_stream_set_skip(*stream, skip_handler_lazyopen);
- svn_stream_set_write(*stream, write_handler_lazyopen);
- svn_stream_set_close(*stream, close_handler_lazyopen);
- svn_stream_set_mark(*stream, mark_handler_lazyopen);
- svn_stream_set_seek(*stream, seek_handler_lazyopen);
-
- return SVN_NO_ERROR;
+ stream = svn_stream_create(lob, result_pool);
+ svn_stream_set_read(stream, read_handler_lazyopen);
+ svn_stream_set_skip(stream, skip_handler_lazyopen);
+ svn_stream_set_write(stream, write_handler_lazyopen);
+ svn_stream_set_close(stream, close_handler_lazyopen);
+ svn_stream_set_mark(stream, mark_handler_lazyopen);
+ svn_stream_set_seek(stream, seek_handler_lazyopen);
+
+ return stream;
}
Modified: subversion/trunk/subversion/libsvn_wc/adm_ops.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_wc/adm_ops.c?rev=1335695&r1=1335694&r2=1335695&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_wc/adm_ops.c (original)
+++ subversion/trunk/subversion/libsvn_wc/adm_ops.c Tue May 8 18:56:07 2012
@@ -2299,8 +2299,8 @@ svn_wc__get_pristine_contents_by_checksu
gpl_baton->wri_abspath = wri_abspath;
gpl_baton->sha1_checksum = sha1_checksum;
- SVN_ERR(svn_stream_lazyopen_create(contents, get_pristine_lazyopen_func,
- gpl_baton, result_pool));
+ *contents = svn_stream_lazyopen_create(get_pristine_lazyopen_func,
+ gpl_baton, result_pool);
}
return SVN_NO_ERROR;