Author: stefan2
Date: Mon Jun 4 20:05:23 2012
New Revision: 1346133
URL: http://svn.apache.org/viewvc?rev=1346133&view=rev
Log:
Minor optimization to svn: protocol command and response code.
* subversion/libsvn_ra_svn/marshal.c
(svn_ra_svn_write_cmd, svn_ra_svn_write_cmd_response,
svn_ra_svn_write_cmd_failure): minimize the number of write
operations for list and command markers
Modified:
subversion/trunk/subversion/libsvn_ra_svn/marshal.c
Modified: subversion/trunk/subversion/libsvn_ra_svn/marshal.c
URL:
http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra_svn/marshal.c?rev=1346133&r1=1346132&r2=1346133&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra_svn/marshal.c (original)
+++ subversion/trunk/subversion/libsvn_ra_svn/marshal.c Mon Jun 4 20:05:23 2012
@@ -1150,10 +1150,7 @@ svn_error_t *svn_ra_svn_write_cmd(svn_ra
va_start(ap, fmt);
err = vwrite_tuple(conn, pool, fmt, ap);
va_end(ap);
- if (err)
- return err;
- SVN_ERR(svn_ra_svn_end_list(conn, pool));
- return SVN_NO_ERROR;
+ return err ? err : svn_ra_svn_end_list(conn, pool);
}
svn_error_t *svn_ra_svn_write_cmd_response(svn_ra_svn_conn_t *conn,
@@ -1163,24 +1160,18 @@ svn_error_t *svn_ra_svn_write_cmd_respon
va_list ap;
svn_error_t *err;
- SVN_ERR(svn_ra_svn_start_list(conn, pool));
- SVN_ERR(svn_ra_svn_write_word(conn, pool, "success"));
+ SVN_ERR(writebuf_write_short_string(conn, pool, "( success ", 10));
va_start(ap, fmt);
err = vwrite_tuple(conn, pool, fmt, ap);
va_end(ap);
- if (err)
- return err;
- SVN_ERR(svn_ra_svn_end_list(conn, pool));
- return SVN_NO_ERROR;
+ return err ? err : svn_ra_svn_end_list(conn, pool);
}
svn_error_t *svn_ra_svn_write_cmd_failure(svn_ra_svn_conn_t *conn,
apr_pool_t *pool, svn_error_t *err)
{
char buffer[128];
- SVN_ERR(svn_ra_svn_start_list(conn, pool));
- SVN_ERR(svn_ra_svn_write_word(conn, pool, "failure"));
- SVN_ERR(svn_ra_svn_start_list(conn, pool));
+ SVN_ERR(writebuf_write_short_string(conn, pool, "( failure ( ", 12));
for (; err; err = err->child)
{
const char *msg;
@@ -1200,7 +1191,5 @@ svn_error_t *svn_ra_svn_write_cmd_failur
err->file ? err->file : "",
(apr_uint64_t) err->line));
}
- SVN_ERR(svn_ra_svn_end_list(conn, pool));
- SVN_ERR(svn_ra_svn_end_list(conn, pool));
- return SVN_NO_ERROR;
+ return writebuf_write_short_string(conn, pool, ") ) ", 4);
}