You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by st...@apache.org on 2011/01/06 20:15:49 UTC
svn commit: r1056015 [5/8] - in /subversion/branches/performance: ./ build/
build/ac-macros/ build/generator/ contrib/client-side/svnmerge/
contrib/server-side/ contrib/server-side/mod_dontdothat/
contrib/server-side/svnstsw/src/ notes/commit-access-te...
Modified: subversion/branches/performance/subversion/libsvn_subr/cache-inprocess.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_subr/cache-inprocess.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_subr/cache-inprocess.c (original)
+++ subversion/branches/performance/subversion/libsvn_subr/cache-inprocess.c Thu Jan 6 19:15:40 2011
@@ -32,7 +32,7 @@
#include "cache.h"
/* The (internal) cache object. */
-typedef struct {
+typedef struct inprocess_cache_t {
/* Maps from a key (of size CACHE->KLEN) to a struct cache_entry. */
apr_hash_t *hash;
apr_ssize_t klen;
Modified: subversion/branches/performance/subversion/libsvn_subr/cache-memcache.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_subr/cache-memcache.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_subr/cache-memcache.c (original)
+++ subversion/branches/performance/subversion/libsvn_subr/cache-memcache.c Thu Jan 6 19:15:40 2011
@@ -44,7 +44,7 @@
*/
/* The (internal) cache object. */
-typedef struct {
+typedef struct memcache_t {
/* The memcached server set we're using. */
apr_memcache_t *memcache;
Modified: subversion/branches/performance/subversion/libsvn_subr/cache.h
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_subr/cache.h?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_subr/cache.h (original)
+++ subversion/branches/performance/subversion/libsvn_subr/cache.h Thu Jan 6 19:15:40 2011
@@ -30,7 +30,7 @@
extern "C" {
#endif /* __cplusplus */
-typedef struct {
+typedef struct svn_cache__vtable_t {
svn_error_t *(*get)(void **value,
svn_boolean_t *found,
void *cache_implementation,
Modified: subversion/branches/performance/subversion/libsvn_subr/date.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_subr/date.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_subr/date.c (original)
+++ subversion/branches/performance/subversion/libsvn_subr/date.c Thu Jan 6 19:15:40 2011
@@ -42,7 +42,7 @@ enum rule_action {
};
/* How to handle a particular character in a template */
-typedef struct
+typedef struct rule
{
char key; /* The template char that this rule matches */
const char *valid; /* String of valid chars for this rule */
@@ -53,7 +53,7 @@ typedef struct
} rule;
/* The parsed values, before localtime/gmt processing */
-typedef struct
+typedef struct match_state
{
apr_time_exp_t base;
apr_int32_t offhours;
Modified: subversion/branches/performance/subversion/libsvn_subr/dirent_uri.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_subr/dirent_uri.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_subr/dirent_uri.c (original)
+++ subversion/branches/performance/subversion/libsvn_subr/dirent_uri.c Thu Jan 6 19:15:40 2011
@@ -57,7 +57,7 @@
#endif
/* Path type definition. Used only by internal functions. */
-typedef enum {
+typedef enum path_type_t {
type_uri,
type_dirent,
type_relpath
@@ -1925,10 +1925,10 @@ svn_uri_is_canonical(const char *uri, ap
/* Can't usesvn_ctype_isxdigit() because lower case letters are
not in our canonical format */
- if (((*(ptr+1) < '0' || *(ptr+1) > '9'))
+ if (((*(ptr+1) < '0' || *(ptr+1) > '9'))
&& (*(ptr+1) < 'A' || *(ptr+1) > 'F'))
return FALSE;
- else if (((*(ptr+2) < '0' || *(ptr+2) > '9'))
+ else if (((*(ptr+2) < '0' || *(ptr+2) > '9'))
&& (*(ptr+2) < 'A' || *(ptr+2) > 'F'))
return FALSE;
Modified: subversion/branches/performance/subversion/libsvn_subr/eol.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_subr/eol.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_subr/eol.c (original)
+++ subversion/branches/performance/subversion/libsvn_subr/eol.c Thu Jan 6 19:15:40 2011
@@ -29,14 +29,68 @@
#include "svn_io.h"
#include "private/svn_eol_private.h"
+/* Machine-word-sized masks used in svn_eol__find_eol_start.
+ */
+#if APR_SIZEOF_VOIDP == 8
+# define LOWER_7BITS_SET 0x7f7f7f7f7f7f7f7f
+# define BIT_7_SET 0x8080808080808080
+# define R_MASK 0x0a0a0a0a0a0a0a0a
+# define N_MASK 0x0d0d0d0d0d0d0d0d
+#else
+# define LOWER_7BITS_SET 0x7f7f7f7f
+# define BIT_7_SET 0x80808080
+# define R_MASK 0x0a0a0a0a
+# define N_MASK 0x0d0d0d0d
+#endif
+
char *
svn_eol__find_eol_start(char *buf, apr_size_t len)
{
+#if !SVN_UNALIGNED_ACCESS_IS_OK
+
+ /* On some systems, we need to make sure that buf is properly aligned
+ * for chunky data access. This overhead is still justified because
+ * only lines tend to be tens of chars long.
+ */
+ for (; (len > 0) && ((apr_size_t)buf) & (sizeof(apr_size_t)-1)
+ ; ++buf, --len)
+ {
+ if (*buf == '\n' || *buf == '\r')
+ return buf;
+ }
+
+#endif
+
+ /* Scan the input one machine word at a time. */
+ for (; len > sizeof(apr_size_t)
+ ; buf += sizeof(apr_size_t), len -= sizeof(apr_size_t))
+ {
+ /* This is a variant of the well-known strlen test: */
+ apr_size_t chunk = *(const apr_size_t *)buf;
+
+ /* A byte in R_TEST is \0, iff it was \r in *BUF.
+ * Similarly, N_TEST is an indicator for \n. */
+ apr_size_t r_test = chunk ^ R_MASK;
+ apr_size_t n_test = chunk ^ N_MASK;
+
+ /* A byte in R_TEST can by < 0x80, iff it has been \0 before
+ * (i.e. \r in *BUF). Dito for N_TEST. */
+ r_test |= (r_test & LOWER_7BITS_SET) + LOWER_7BITS_SET;
+ n_test |= (n_test & LOWER_7BITS_SET) + LOWER_7BITS_SET;
+
+ /* Check whether at least one of the words contains a byte <0x80
+ * (if one is detected, there was a \r or \n in CHUNK). */
+ if ((r_test & n_test & BIT_7_SET) != BIT_7_SET)
+ break;
+ }
+
+ /* The remaining odd bytes will be examined the naive way: */
for (; len > 0; ++buf, --len)
{
if (*buf == '\n' || *buf == '\r')
return buf;
}
+
return NULL;
}
Modified: subversion/branches/performance/subversion/libsvn_subr/error.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_subr/error.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_subr/error.c (original)
+++ subversion/branches/performance/subversion/libsvn_subr/error.c Thu Jan 6 19:15:40 2011
@@ -376,7 +376,14 @@ svn_error_purge_tracing(svn_error_t *err
/* The link must be a real link in the error chain, otherwise an
error chain with trace only links would map into SVN_NO_ERROR. */
- SVN_ERR_ASSERT(err);
+ if (! err)
+ return svn_error_create(
+ SVN_ERR_ASSERTION_ONLY_TRACING_LINKS,
+ svn_error_compose_create(
+ svn_error__malfunction(TRUE, __FILE__, __LINE__,
+ NULL /* ### say something? */),
+ err),
+ NULL);
/* Copy the current error except for its child error pointer
into the new error. Share any message and source filename
@@ -580,7 +587,7 @@ svn_err_best_message(svn_error_t *err, c
/* svn_strerror() and helpers */
-typedef struct {
+typedef struct err_defn {
svn_errno_t errcode;
const char *errdesc;
} err_defn;
Modified: subversion/branches/performance/subversion/libsvn_subr/io.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_subr/io.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_subr/io.c (original)
+++ subversion/branches/performance/subversion/libsvn_subr/io.c Thu Jan 6 19:15:40 2011
@@ -334,7 +334,7 @@ svn_io_open_uniquely_named(apr_file_t **
unsigned int i;
struct temp_file_cleanup_s *baton = NULL;
- /* At the beginning, we don't know whether unique_path will need
+ /* At the beginning, we don't know whether unique_path will need
UTF8 conversion */
svn_boolean_t needs_utf8_conversion = TRUE;
@@ -819,9 +819,9 @@ file_perms_set(const char *fname, apr_fi
return SVN_NO_ERROR;
}
-/* Set permissions PERMS on the FILE. This is a cheaper variant of the
+/* Set permissions PERMS on the FILE. This is a cheaper variant of the
* file_perms_set wrapper() function because no locale-dependent string
- * conversion is required.
+ * conversion is required.
*/
static svn_error_t *
file_perms_set2(apr_file_t* file, apr_fileperms_t perms)
@@ -2138,7 +2138,7 @@ svn_io_stat_dirent(const svn_io_dirent2_
| APR_FINFO_SIZE | APR_FINFO_MTIME,
scratch_pool);
- if (err && ignore_enoent &&
+ if (err && ignore_enoent &&
(APR_STATUS_IS_ENOENT(err->apr_err)
|| SVN__APR_STATUS_IS_ENOTDIR(err->apr_err)))
{
@@ -3276,7 +3276,7 @@ svn_io_dir_remove_nonrecursive(const cha
if (APR_STATUS_IS_ENOTEMPTY(empty_status))
retry = FALSE;
}
-
+
if (retry)
{
WIN32_RETRY_LOOP(status, apr_dir_remove(dirname_apr, pool));
@@ -3717,7 +3717,7 @@ temp_file_create(apr_file_t **new_file,
if (status)
return svn_error_wrap_apr(status, _("Can't create temporary file from "
"template '%s'"), templ);
-
+
/* Translate the returned path back to utf-8 before returning it */
return svn_error_return(svn_path_cstring_to_utf8(new_file_name,
templ_apr,
@@ -3733,7 +3733,7 @@ temp_file_create(apr_file_t **new_file,
/* Offset by some time value and a unique request nr to make the number
+- unique for both this process and on the computer */
- int baseNr = (GetTickCount() << 11) + 7 * svn_atomic_inc(&tempname_counter)
+ int baseNr = (GetTickCount() << 11) + 7 * svn_atomic_inc(&tempname_counter)
+ GetCurrentProcessId();
int i;
Modified: subversion/branches/performance/subversion/libsvn_subr/iter.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_subr/iter.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_subr/iter.c (original)
+++ subversion/branches/performance/subversion/libsvn_subr/iter.c Thu Jan 6 19:15:40 2011
@@ -53,7 +53,7 @@ int hash_do_callback(void *baton,
const void *value)
{
struct hash_do_baton *hdb = baton;
-
+
svn_pool_clear(hdb->iterpool);
hdb->err = (*hdb->func)(hdb->baton, key, klen, (void *)value, hdb->iterpool);
Modified: subversion/branches/performance/subversion/libsvn_subr/lock.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_subr/lock.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_subr/lock.c (original)
+++ subversion/branches/performance/subversion/libsvn_subr/lock.c Thu Jan 6 19:15:40 2011
@@ -47,7 +47,7 @@ svn_lock_dup(const svn_lock_t *lock, apr
if (lock == NULL)
return NULL;
-
+
new_l = apr_palloc(pool, sizeof(*new_l));
*new_l = *lock;
Modified: subversion/branches/performance/subversion/libsvn_subr/mergeinfo.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_subr/mergeinfo.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_subr/mergeinfo.c (original)
+++ subversion/branches/performance/subversion/libsvn_subr/mergeinfo.c Thu Jan 6 19:15:40 2011
@@ -126,7 +126,7 @@ parse_pathname(const char **input,
(SVN_IS_VALID_REVNUM((range)->start) && ((range)->start < (range)->end))
/* Ways in which two svn_merge_range_t can intersect or adjoin, if at all. */
-typedef enum
+typedef enum intersection_type_t
{
/* Ranges don't intersect and don't adjoin. */
svn__no_intersection,
@@ -2114,7 +2114,7 @@ svn_mergeinfo__adjust_mergeinfo_rangelis
APR_ARRAY_IDX(rangelist, i, svn_merge_range_t *);
if (range->start + offset > 0 && range->end + offset > 0)
- {
+ {
if (range->start + offset < 0)
range->start = 0;
else
Modified: subversion/branches/performance/subversion/libsvn_subr/opt.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_subr/opt.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_subr/opt.c (original)
+++ subversion/branches/performance/subversion/libsvn_subr/opt.c Thu Jan 6 19:15:40 2011
@@ -1048,7 +1048,7 @@ svn_opt__print_version_info(const char *
SVN_ERR(svn_cmdline_printf(pool, _("%s, version %s\n"
" compiled %s, %s\n\n"), pgm_name,
SVN_VERSION, __DATE__, __TIME__));
- SVN_ERR(svn_cmdline_fputs(_("Copyright (C) 2010 The Apache Software Foundation.\n"
+ SVN_ERR(svn_cmdline_fputs(_("Copyright (C) 2011 The Apache Software Foundation.\n"
"This software consists of"
" contributions made by many people;\n"
"see the NOTICE file for more information.\n"
Modified: subversion/branches/performance/subversion/libsvn_subr/simple_providers.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_subr/simple_providers.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_subr/simple_providers.c (original)
+++ subversion/branches/performance/subversion/libsvn_subr/simple_providers.c Thu Jan 6 19:15:40 2011
@@ -49,7 +49,7 @@
#define AUTHN_PASSTYPE_KEY "passtype"
/* Baton type for the simple provider. */
-typedef struct
+typedef struct simple_provider_baton_t
{
svn_auth_plaintext_prompt_func_t plaintext_prompt_func;
void *prompt_baton;
@@ -541,7 +541,7 @@ svn_auth_get_simple_provider2
/*-----------------------------------------------------------------------*/
/* Baton type for username/password prompting. */
-typedef struct
+typedef struct simple_prompt_provider_baton_t
{
svn_auth_simple_prompt_func_t prompt_func;
void *prompt_baton;
@@ -552,7 +552,7 @@ typedef struct
/* Iteration baton type for username/password prompting. */
-typedef struct
+typedef struct simple_prompt_iter_baton_t
{
/* how many times we've reprompted */
int retries;
Modified: subversion/branches/performance/subversion/libsvn_subr/ssl_client_cert_providers.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_subr/ssl_client_cert_providers.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_subr/ssl_client_cert_providers.c (original)
+++ subversion/branches/performance/subversion/libsvn_subr/ssl_client_cert_providers.c Thu Jan 6 19:15:40 2011
@@ -105,7 +105,7 @@ void svn_auth_get_ssl_client_cert_file_p
/* Baton type for prompting to send client ssl creds.
There is no iteration baton type. */
-typedef struct
+typedef struct ssl_client_cert_prompt_provider_baton_t
{
svn_auth_ssl_client_cert_prompt_func_t prompt_func;
void *prompt_baton;
@@ -115,7 +115,7 @@ typedef struct
} ssl_client_cert_prompt_provider_baton_t;
/* Iteration baton. */
-typedef struct
+typedef struct ssl_client_cert_prompt_iter_baton_t
{
/* The original provider baton */
ssl_client_cert_prompt_provider_baton_t *pb;
Modified: subversion/branches/performance/subversion/libsvn_subr/ssl_client_cert_pw_providers.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_subr/ssl_client_cert_pw_providers.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_subr/ssl_client_cert_pw_providers.c (original)
+++ subversion/branches/performance/subversion/libsvn_subr/ssl_client_cert_pw_providers.c Thu Jan 6 19:15:40 2011
@@ -49,7 +49,7 @@
#define AUTHN_PASSTYPE_KEY "passtype"
/* Baton type for the ssl client cert passphrase provider. */
-typedef struct
+typedef struct ssl_client_cert_pw_file_provider_baton_t
{
svn_auth_plaintext_passphrase_prompt_func_t plaintext_passphrase_prompt_func;
void *prompt_baton;
@@ -405,7 +405,7 @@ svn_auth_get_ssl_client_cert_pw_file_pro
/* Baton type for client passphrase prompting.
There is no iteration baton type. */
-typedef struct
+typedef struct ssl_client_cert_pw_prompt_provider_baton_t
{
svn_auth_ssl_client_cert_pw_prompt_func_t prompt_func;
void *prompt_baton;
@@ -415,7 +415,7 @@ typedef struct
} ssl_client_cert_pw_prompt_provider_baton_t;
/* Iteration baton. */
-typedef struct
+typedef struct ssl_client_cert_pw_prompt_iter_baton_t
{
/* The original provider baton */
ssl_client_cert_pw_prompt_provider_baton_t *pb;
Modified: subversion/branches/performance/subversion/libsvn_subr/ssl_server_trust_providers.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_subr/ssl_server_trust_providers.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_subr/ssl_server_trust_providers.c (original)
+++ subversion/branches/performance/subversion/libsvn_subr/ssl_server_trust_providers.c Thu Jan 6 19:15:40 2011
@@ -182,7 +182,7 @@ svn_auth_get_ssl_server_trust_file_provi
/* Baton type for prompting to verify server ssl creds.
There is no iteration baton type. */
-typedef struct
+typedef struct ssl_server_trust_prompt_provider_baton_t
{
svn_auth_ssl_server_trust_prompt_func_t prompt_func;
void *prompt_baton;
Modified: subversion/branches/performance/subversion/libsvn_subr/stream.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_subr/stream.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_subr/stream.c (original)
+++ subversion/branches/performance/subversion/libsvn_subr/stream.c Thu Jan 6 19:15:40 2011
@@ -1720,7 +1720,7 @@ struct stringbuf_stream_baton
/* svn_stream_mark_t for streams backed by stringbufs. */
struct stringbuf_stream_mark {
- apr_size_t pos;
+ apr_size_t pos;
};
static svn_error_t *
@@ -1824,7 +1824,7 @@ struct string_stream_baton
/* svn_stream_mark_t for streams backed by stringbufs. */
struct string_stream_mark {
- apr_size_t pos;
+ apr_size_t pos;
};
static svn_error_t *
Modified: subversion/branches/performance/subversion/libsvn_subr/subst.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_subr/subst.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_subr/subst.c (original)
+++ subversion/branches/performance/subversion/libsvn_subr/subst.c Thu Jan 6 19:15:40 2011
@@ -905,7 +905,7 @@ eol_unchanged(struct translation_baton *
const char *buf)
{
/* If the first byte doesn't match, the whole EOL won't.
- * This does also handle the (certainly invalid) case that
+ * This does also handle the (certainly invalid) case that
* eol_str would be an empty string.
*/
if (buf[0] != b->eol_str[0])
@@ -915,7 +915,7 @@ eol_unchanged(struct translation_baton *
if (b->eol_str_len == 2)
return buf[1] == b->eol_str[1];
- /* The first char matches the required 1-byte EOL.
+ /* The first char matches the required 1-byte EOL.
* But maybe, buf[] contains a 2-byte EOL?
* In that case, the second byte will be interesting
* and not be another EOL of its own.
@@ -1036,9 +1036,9 @@ translate_chunk(svn_stream_t *dst,
/* translate_newline will modify the baton for src_format_len==0
or may return an error if b->repair is FALSE. In all other
cases, we can skip the newline translation as long as source
- EOL format and actual EOL format match. If there is a
- mismatch, translate_newline will be called regardless of
- nl_translation_skippable.
+ EOL format and actual EOL format match. If there is a
+ mismatch, translate_newline will be called regardless of
+ nl_translation_skippable.
*/
if (b->nl_translation_skippable == svn_tristate_unknown &&
b->src_format_len > 0)
@@ -1047,14 +1047,14 @@ translate_chunk(svn_stream_t *dst,
if (b->eol_str_len == b->src_format_len &&
strncmp(b->eol_str, b->src_format, b->eol_str_len) == 0)
b->nl_translation_skippable = svn_tristate_true;
- else if (b->repair)
+ else if (b->repair)
b->nl_translation_skippable = svn_tristate_true;
else
b->nl_translation_skippable = svn_tristate_false;
}
/* We're in the boring state; look for interesting characters.
- Offset len such that it will become 0 in the first iteration.
+ Offset len such that it will become 0 in the first iteration.
*/
len = 0 - b->eol_str_len;
@@ -1081,7 +1081,7 @@ translate_chunk(svn_stream_t *dst,
len += 4;
}
- /* Found an interesting char or EOF in the next 4 bytes.
+ /* Found an interesting char or EOF in the next 4 bytes.
Find its exact position. */
while ((p + len) < end && !interesting[(unsigned char)p[len]])
++len;
@@ -1302,7 +1302,7 @@ translated_stream_close(void *baton)
/* svn_stream_mark_t for translation streams. */
-typedef struct
+typedef struct mark_translated_t
{
/* Saved translation state. */
struct translated_stream_baton saved_baton;
@@ -1317,7 +1317,7 @@ translated_stream_mark(void *baton, svn_
{
mark_translated_t *mt;
struct translated_stream_baton *b = baton;
-
+
mt = apr_palloc(pool, sizeof(*mt));
SVN_ERR(svn_stream_mark(b->stream, &mt->mark, pool));
@@ -1352,13 +1352,13 @@ translated_stream_seek(void *baton, svn_
b->iterpool));
SVN_ERR(svn_stream_seek(b->stream, mt->mark));
-
+
/* Restore translation state, avoiding new allocations. */
*b->in_baton = *mt->saved_baton.in_baton;
*b->out_baton = *mt->saved_baton.out_baton;
b->written = mt->saved_baton.written;
svn_stringbuf_setempty(b->readbuf);
- svn_stringbuf_appendbytes(b->readbuf, mt->saved_baton.readbuf->data,
+ svn_stringbuf_appendbytes(b->readbuf, mt->saved_baton.readbuf->data,
mt->saved_baton.readbuf->len);
b->readbuf_off = mt->saved_baton.readbuf_off;
memcpy(b->buf, mt->saved_baton.buf, SVN__TRANSLATION_BUF_SIZE);
Modified: subversion/branches/performance/subversion/libsvn_subr/svn_string.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_subr/svn_string.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_subr/svn_string.c (original)
+++ subversion/branches/performance/subversion/libsvn_subr/svn_string.c Thu Jan 6 19:15:40 2011
@@ -409,8 +409,8 @@ svn_stringbuf_ensure(svn_stringbuf_t *st
}
-/* WARNING - Optimized code ahead!
- * This function has been hand-tuned for performance. Please read
+/* WARNING - Optimized code ahead!
+ * This function has been hand-tuned for performance. Please read
* the comments below before modifying the code.
*/
void
@@ -428,7 +428,7 @@ svn_stringbuf_appendbyte(svn_stringbuf_t
/* The following read does not depend this write, so we
* can issue the write first to minimize register pressure:
* The value of old_len+1 is no longer needed; on most processors,
- * dest[old_len+1] will be calculated implicitly as part of
+ * dest[old_len+1] will be calculated implicitly as part of
* the addressing scheme.
*/
str->len = old_len+1;
@@ -446,7 +446,7 @@ svn_stringbuf_appendbyte(svn_stringbuf_t
*
* Including the "byte" fetch, all operations so far could be
* issued at once and be scheduled at the CPU's descression.
- * Most likely, no-one will soon depend on the data that will be
+ * Most likely, no-one will soon depend on the data that will be
* written in this function. So, no stalls there, either.
*/
dest[old_len] = byte;
Modified: subversion/branches/performance/subversion/libsvn_subr/username_providers.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_subr/username_providers.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_subr/username_providers.c (original)
+++ subversion/branches/performance/subversion/libsvn_subr/username_providers.c Thu Jan 6 19:15:40 2011
@@ -165,7 +165,7 @@ svn_auth_get_username_provider(svn_auth_
/*-----------------------------------------------------------------------*/
/* Baton type for username-only prompting. */
-typedef struct
+typedef struct username_prompt_provider_baton_t
{
svn_auth_username_prompt_func_t prompt_func;
void *prompt_baton;
@@ -176,7 +176,7 @@ typedef struct
/* Iteration baton type for username-only prompting. */
-typedef struct
+typedef struct username_prompt_iter_baton_t
{
/* how many times we've reprompted */
int retries;
Modified: subversion/branches/performance/subversion/libsvn_subr/win32_crashrpt.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_subr/win32_crashrpt.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_subr/win32_crashrpt.c (original)
+++ subversion/branches/performance/subversion/libsvn_subr/win32_crashrpt.c Thu Jan 6 19:15:40 2011
@@ -375,7 +375,7 @@ format_value(char *value_str, DWORD64 mo
/* Internal structure used to pass some data to the enumerate symbols
* callback */
-typedef struct {
+typedef struct symbols_baton_t {
STACKFRAME64 *stack_frame;
FILE *log_file;
int nr_of_frame;
Modified: subversion/branches/performance/subversion/libsvn_wc/adm_crawler.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_wc/adm_crawler.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_wc/adm_crawler.c (original)
+++ subversion/branches/performance/subversion/libsvn_wc/adm_crawler.c Thu Jan 6 19:15:40 2011
@@ -476,7 +476,7 @@ report_revisions_and_depths(svn_wc__db_t
const char *file_ext_str;
this_switched = TRUE;
-
+
/* This could be a file external! We need to know
that. */
SVN_ERR(svn_wc__db_temp_get_file_external(&file_ext_str, db,
Modified: subversion/branches/performance/subversion/libsvn_wc/adm_ops.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_wc/adm_ops.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_wc/adm_ops.c (original)
+++ subversion/branches/performance/subversion/libsvn_wc/adm_ops.c Thu Jan 6 19:15:40 2011
@@ -74,7 +74,7 @@ struct svn_wc_committed_queue_t
svn_boolean_t have_recursive;
};
-typedef struct
+typedef struct committed_queue_item_t
{
const char *local_abspath;
svn_boolean_t recurse;
@@ -1108,7 +1108,7 @@ svn_wc_add4(svn_wc_context_t *wc_ctx,
{
/* This code should never be used, as it doesn't install proper
pristine and/or properties. But it was not an error in the old
- version of this function.
+ version of this function.
===> Use svn_wc_add_repos_file4() directly! */
svn_stream_t *content = svn_stream_empty(scratch_pool);
@@ -1869,7 +1869,7 @@ svn_wc__internal_remove_from_revision_co
entry_abspath = svn_dirent_join(local_abspath, entry_name, iterpool);
- /* ### where did the adm_missing and depth_exclude test go?!?
+ /* ### where did the adm_missing and depth_exclude test go?!?
### BH: depth exclude is handled by hidden and missing is ok
for this temp_op. */
Modified: subversion/branches/performance/subversion/libsvn_wc/ambient_depth_filter_editor.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_wc/ambient_depth_filter_editor.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_wc/ambient_depth_filter_editor.c (original)
+++ subversion/branches/performance/subversion/libsvn_wc/ambient_depth_filter_editor.c Thu Jan 6 19:15:40 2011
@@ -301,7 +301,7 @@ make_file_baton(struct file_baton **f_p,
depth==empty. So if the parent doesn't
already have an entry for the file, then the parent
doesn't want to hear about the file at all. */
-
+
if (hidden || kind == svn_wc__db_kind_unknown)
{
f->ambiently_excluded = TRUE;
Modified: subversion/branches/performance/subversion/libsvn_wc/conflicts.h
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_wc/conflicts.h?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_wc/conflicts.h (original)
+++ subversion/branches/performance/subversion/libsvn_wc/conflicts.h Thu Jan 6 19:15:40 2011
@@ -58,10 +58,10 @@ svn_wc__conflict_skel_new(apr_pool_t *re
/* Set 'update' as the conflicting operation in CONFLICT_SKEL.
Allocate data stored in the skel in RESULT_POOL.
-
+
BASE_REVISION is the revision the node was at before the update.
TARGET_REVISION is the revision being updated to.
-
+
Do temporary allocations in SCRATCH_POOL. */
svn_error_t *
svn_wc__conflict_skel_set_op_update(svn_skel_t *conflict_skel,
@@ -92,7 +92,7 @@ svn_wc__conflict_skel_set_op_switch(svn_
Allocate data stored in the skel in RESULT_POOL.
REPOS_UUID is the UUID of the repository accessed via REPOS_ROOT_URL.
-
+
LEFT_REPOS_RELPATH and RIGHT_REPOS_RELPATH paths to the merge-left
and merge-right merge sources, relative to REPOS_URL
Modified: subversion/branches/performance/subversion/libsvn_wc/copy.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_wc/copy.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_wc/copy.c (original)
+++ subversion/branches/performance/subversion/libsvn_wc/copy.c Thu Jan 6 19:15:40 2011
@@ -114,7 +114,7 @@ copy_to_tmpdir(const char **dst_abspath,
scratch_pool));
else
SVN_ERR(svn_io_copy_link(src_abspath, *dst_abspath, scratch_pool));
-
+
return SVN_NO_ERROR;
}
@@ -461,7 +461,7 @@ svn_wc_copy3(svn_wc_context_t *wc_ctx,
SVN_ERR_ASSERT(svn_dirent_is_absolute(src_abspath));
SVN_ERR_ASSERT(svn_dirent_is_absolute(dst_abspath));
-
+
dstdir_abspath = svn_dirent_dirname(dst_abspath, scratch_pool);
/* Ensure DSTDIR_ABSPATH belongs to the same repository as SRC_ABSPATH;
Modified: subversion/branches/performance/subversion/libsvn_wc/deprecated.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_wc/deprecated.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_wc/deprecated.c (original)
+++ subversion/branches/performance/subversion/libsvn_wc/deprecated.c Thu Jan 6 19:15:40 2011
@@ -3637,7 +3637,7 @@ svn_wc_copy2(const char *src,
SVN_ERR(svn_wc_copy3(wc_ctx,
src_abspath,
dst_abspath,
- FALSE /* metadata_only */,
+ FALSE /* metadata_only */,
cancel_func, cancel_baton,
notify_func, notify_baton,
pool));
Modified: subversion/branches/performance/subversion/libsvn_wc/entries.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_wc/entries.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_wc/entries.c (original)
+++ subversion/branches/performance/subversion/libsvn_wc/entries.c Thu Jan 6 19:15:40 2011
@@ -52,7 +52,7 @@
/* Temporary structures which mirror the tables in wc-metadata.sql.
For detailed descriptions of each field, see that file. */
-typedef struct {
+typedef struct db_base_node_t {
apr_int64_t wc_id;
const char *local_relpath;
apr_int64_t repos_id;
@@ -71,7 +71,7 @@ typedef struct {
apr_hash_t *properties;
} db_base_node_t;
-typedef struct {
+typedef struct db_working_node_t {
apr_int64_t wc_id;
const char *local_relpath;
apr_int64_t op_depth;
@@ -93,7 +93,7 @@ typedef struct {
apr_hash_t *properties;
} db_working_node_t;
-typedef struct {
+typedef struct db_actual_node_t {
apr_int64_t wc_id;
const char *local_relpath;
const char *parent_relpath;
@@ -540,8 +540,8 @@ read_one_entry(const svn_wc_entry_t **ne
entry->copied = TRUE;
/* If there is still a directory on-disk we keep it, if not it is
- already deleted. Simple, isn't it?
-
+ already deleted. Simple, isn't it?
+
Before single-db we had to keep the administative area alive until
after the commit really deletes it. Setting keep alive stopped the
commit processing from deleting the directory. We don't delete it
@@ -625,7 +625,7 @@ read_one_entry(const svn_wc_entry_t **ne
entry_abspath,
result_pool, scratch_pool));
- /* In wc.db we want to keep the valid revision of the not-present
+ /* In wc.db we want to keep the valid revision of the not-present
BASE_REV, but when we used entries we set the revision to 0
when adding a new node over a not present base node. */
if (work_status == svn_wc__db_status_added
@@ -1992,7 +1992,14 @@ write_entry(struct write_baton **entry_n
/* The revert_base checksum isn't available in the entry structure,
so the caller provides it. */
- below_working_node->checksum = text_base_info->revert_base.sha1_checksum;
+
+ /* text_base_info is NULL for files scheduled to be added. */
+ below_working_node->checksum = NULL;
+ if (text_base_info)
+ {
+ below_working_node->checksum =
+ text_base_info->revert_base.sha1_checksum;
+ }
below_working_node->translated_size = 0;
below_working_node->changed_rev = SVN_INVALID_REVNUM;
below_working_node->changed_date = 0;
@@ -2025,12 +2032,16 @@ write_entry(struct write_baton **entry_n
working_node->checksum = NULL;
else
{
- working_node->checksum = text_base_info->normal_base.sha1_checksum;
+ working_node->checksum = NULL;
+ /* text_base_info is NULL for files scheduled to be added. */
+ if (text_base_info)
+ working_node->checksum = text_base_info->normal_base.sha1_checksum;
+
/* If an MD5 checksum is present in the entry, we can verify that
* it matches the MD5 of the base file we found earlier. */
#ifdef SVN_DEBUG
- if (entry->checksum)
+ if (entry->checksum && text_base_info)
{
svn_checksum_t *md5_checksum;
SVN_ERR(svn_checksum_parse_hex(&md5_checksum, svn_checksum_md5,
Modified: subversion/branches/performance/subversion/libsvn_wc/lock.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_wc/lock.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_wc/lock.c (original)
+++ subversion/branches/performance/subversion/libsvn_wc/lock.c Thu Jan 6 19:15:40 2011
@@ -162,19 +162,19 @@ svn_wc__internal_check_wc(int *wc_format
return SVN_NO_ERROR;
}
}
-
+
err = svn_wc__db_read_info(&db_status, &db_kind, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL,
db, local_abspath,
scratch_pool, scratch_pool);
-
+
if (err && err->apr_err == SVN_ERR_WC_PATH_NOT_FOUND)
{
svn_error_clear(err);
*wc_format = 0;
- return SVN_NO_ERROR;
+ return SVN_NO_ERROR;
}
else
SVN_ERR(err);
Modified: subversion/branches/performance/subversion/libsvn_wc/lock.h
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_wc/lock.h?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_wc/lock.h (original)
+++ subversion/branches/performance/subversion/libsvn_wc/lock.h Thu Jan 6 19:15:40 2011
@@ -59,7 +59,7 @@ svn_wc__adm_retrieve_internal2(svn_wc__d
/* ### this is probably bunk. but I dunna want to trace backwards-compat
### users of svn_wc_check_wc(). probably gonna be rewritten for wc-ng
### in any case.
-
+
If CHECK_PATH is TRUE, a not-existing directory is not a working copy */
svn_error_t *
svn_wc__internal_check_wc(int *wc_format,
Modified: subversion/branches/performance/subversion/libsvn_wc/node.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_wc/node.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_wc/node.c (original)
+++ subversion/branches/performance/subversion/libsvn_wc/node.c Thu Jan 6 19:15:40 2011
@@ -421,7 +421,7 @@ svn_wc__node_get_url(const char **url,
result_pool, scratch_pool));
}
-/* ### This is essentially a copy-paste of svn_wc__internal_get_url().
+/* ### This is essentially a copy-paste of svn_wc__internal_get_url().
* ### If we decide to keep this one, then it should be rewritten to avoid
* ### code duplication.*/
svn_error_t *
@@ -980,11 +980,11 @@ svn_wc__node_get_base_rev(svn_revnum_t *
svn_error_t *
svn_wc__node_get_working_rev_info(svn_revnum_t *revision,
- svn_revnum_t *changed_rev,
- apr_time_t *changed_date,
+ svn_revnum_t *changed_rev,
+ apr_time_t *changed_date,
const char **changed_author,
- svn_wc_context_t *wc_ctx,
- const char *local_abspath,
+ svn_wc_context_t *wc_ctx,
+ const char *local_abspath,
apr_pool_t *scratch_pool,
apr_pool_t *result_pool)
{
@@ -1016,7 +1016,7 @@ svn_wc__node_get_working_rev_info(svn_re
NULL, changed_rev, changed_date,
changed_author, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL,
- NULL, NULL, NULL, NULL,
+ NULL, NULL, NULL, NULL,
NULL, NULL, wc_ctx->db, work_del_abspath,
result_pool, scratch_pool));
}
@@ -1169,7 +1169,7 @@ svn_wc__node_get_lock_info(const char **
*lock_comment = lock ? lock->comment : NULL;
if (lock_date)
*lock_date = lock ? lock->date : 0;
-
+
return SVN_NO_ERROR;
}
Modified: subversion/branches/performance/subversion/libsvn_wc/props.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_wc/props.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_wc/props.c (original)
+++ subversion/branches/performance/subversion/libsvn_wc/props.c Thu Jan 6 19:15:40 2011
@@ -480,7 +480,7 @@ generate_conflict_message(const char *pr
"value '%s',\nbut property with value "
"'%s' is locally deleted."),
propname, incoming_base->data,
- original->data);
+ original->data);
}
/* We were trying to delete INCOMING_BASE but our ORIGINAL is
@@ -535,7 +535,7 @@ generate_conflict_message(const char *pr
"added with value '%s'."),
propname, incoming_base->data, incoming->data,
mine->data);
-
+
return svn_string_createf(result_pool,
_("Trying to change property '%s' from '%s' to "
"'%s',\nbut the property does not exist."),
Modified: subversion/branches/performance/subversion/libsvn_wc/relocate.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_wc/relocate.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_wc/relocate.c (original)
+++ subversion/branches/performance/subversion/libsvn_wc/relocate.c Thu Jan 6 19:15:40 2011
@@ -136,7 +136,7 @@ svn_wc_relocate4(svn_wc_context_t *wc_ct
_("Invalid source URL prefix: '%s' (does not "
"overlap target's URL '%s')"),
from, old_url);
-
+
if (old_url_len == from_len)
new_url = to;
else
Modified: subversion/branches/performance/subversion/libsvn_wc/revision_status.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_wc/revision_status.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_wc/revision_status.c (original)
+++ subversion/branches/performance/subversion/libsvn_wc/revision_status.c Thu Jan 6 19:15:40 2011
@@ -59,12 +59,12 @@ analyze_status(const char *local_abspath
struct walk_baton *wb = baton;
svn_revnum_t changed_rev;
svn_revnum_t revision;
- svn_revnum_t item_rev;
+ svn_revnum_t item_rev;
svn_depth_t depth;
svn_wc__db_status_t status;
- SVN_ERR(svn_wc__db_read_info(&status, NULL, &revision, NULL,
- NULL, NULL, &changed_rev,
+ SVN_ERR(svn_wc__db_read_info(&status, NULL, &revision, NULL,
+ NULL, NULL, &changed_rev,
NULL, NULL, NULL, &depth, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, wb->db,
@@ -73,7 +73,7 @@ analyze_status(const char *local_abspath
/* We need the excluded and absent paths when checking for sparse
* checkouts. But only for that. To collect those we're walking all the
* hidden nodes. */
- if (status == svn_wc__db_status_excluded
+ if (status == svn_wc__db_status_excluded
|| status == svn_wc__db_status_absent)
{
wb->result->sparse_checkout = TRUE;
@@ -86,7 +86,7 @@ analyze_status(const char *local_abspath
else if (status == svn_wc__db_status_added
|| status == svn_wc__db_status_deleted)
{
- wb->result->modified = TRUE;
+ wb->result->modified = TRUE;
}
if (! wb->result->switched)
@@ -135,10 +135,10 @@ analyze_status(const char *local_abspath
FALSE,
TRUE,
scratch_pool));
- wb->result->modified |= text_mod;
+ wb->result->modified |= text_mod;
}
- wb->result->sparse_checkout |= (depth != svn_depth_infinity
+ wb->result->sparse_checkout |= (depth != svn_depth_infinity
&& depth != svn_depth_unknown);
return SVN_NO_ERROR;
}
Modified: subversion/branches/performance/subversion/libsvn_wc/status.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_wc/status.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_wc/status.c (original)
+++ subversion/branches/performance/subversion/libsvn_wc/status.c Thu Jan 6 19:15:40 2011
@@ -187,7 +187,7 @@ struct dir_baton
/* out-of-date info corresponding to ood_* fields in svn_wc_status3_t. */
svn_node_kind_t ood_kind;
svn_revnum_t ood_changed_rev;
- apr_time_t ood_changed_date;
+ apr_time_t ood_changed_date;
const char *ood_changed_author;
};
@@ -243,7 +243,7 @@ read_info(const struct svn_wc__db_info_t
apr_pool_t *result_pool,
apr_pool_t *scratch_pool)
{
- struct svn_wc__db_info_t *mutable
+ struct svn_wc__db_info_t *mutable
= apr_palloc(scratch_pool, sizeof(struct svn_wc__db_info_t));
SVN_ERR(svn_wc__db_read_info(&mutable->status, &mutable->kind,
@@ -560,7 +560,7 @@ assemble_status(svn_wc_status3_t **statu
db, local_abspath, scratch_pool));
if (!text_conflicted && !prop_conflicted && !tree_conflicted)
- conflicted = FALSE;
+ conflicted = FALSE;
}
if (node_status == svn_wc_status_normal)
@@ -586,7 +586,7 @@ assemble_status(svn_wc_status3_t **statu
if (node_status == svn_wc_status_normal)
node_status = text_status;
-
+
if (node_status == svn_wc_status_normal
&& prop_status != svn_wc_status_none)
node_status = prop_status;
@@ -599,7 +599,7 @@ assemble_status(svn_wc_status3_t **statu
|| (node_status == svn_wc_status_normal))
&& (! switched_p)
- && (! info->lock)
+ && (! info->lock)
&& (! repos_lock)
&& (! info->changelist)
&& (! conflicted))
@@ -2530,8 +2530,8 @@ internal_status(svn_wc_status3_t **statu
else if (err)
return svn_error_return(err);
- if (!err
- && parent_repos_relpath == NULL
+ if (!err
+ && parent_repos_relpath == NULL
&& parent_status != svn_wc__db_status_added
&& parent_status != svn_wc__db_status_deleted)
SVN_ERR(svn_wc__db_scan_base_repos(&parent_repos_relpath,
Modified: subversion/branches/performance/subversion/libsvn_wc/update_editor.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_wc/update_editor.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_wc/update_editor.c (original)
+++ subversion/branches/performance/subversion/libsvn_wc/update_editor.c Thu Jan 6 19:15:40 2011
@@ -275,9 +275,6 @@ struct dir_baton
/* Set if updates to this directory are skipped */
svn_boolean_t skip_this;
- /* Set if updates to all descendants of this directory are skipped */
- svn_boolean_t skip_descendants;
-
/* Set if there was a previous notification for this directory */
svn_boolean_t already_notified;
@@ -935,7 +932,7 @@ struct file_baton
/* The last-changed-date of the file. This is actually a property
that comes through as an 'entry prop', and will be used to set
- the working file's timestamp if it's added.
+ the working file's timestamp if it's added.
Will be NULL unless eb->use_commit_times is TRUE. */
const char *last_changed_date;
@@ -1081,8 +1078,6 @@ static svn_error_t *
accumulate_last_change(svn_revnum_t *changed_rev,
apr_time_t *changed_date,
const char **changed_author,
- svn_wc__db_t *db,
- const char *local_abspath,
const apr_array_header_t *entry_props,
apr_pool_t *scratch_pool,
apr_pool_t *result_pool)
@@ -1214,7 +1209,6 @@ open_root(void *edit_baton,
if (already_conflicted)
{
db->skip_this = TRUE;
- db->skip_descendants = TRUE;
db->already_notified = TRUE;
db->bump_info->skipped = TRUE;
@@ -1947,7 +1941,7 @@ do_entry_deletion(struct edit_baton *eb,
}
/* Receive the remote removal of excluded/absent/not present node.
- Do not notify.
+ Do not notify.
### This is wrong if svn_wc__db_status_excluded refers to a
working node replacing the base node. */
@@ -2024,7 +2018,7 @@ do_entry_deletion(struct edit_baton *eb,
/* The item was locally replaced with something else. We should
* remove the BASE node below the new working node, which turns
* the replacement in an addition. */
-
+
/* Fall through to the normal "delete" code path. */
}
else
@@ -2084,13 +2078,8 @@ delete_entry(const char *path,
local_abspath = svn_dirent_join(pb->local_abspath, base, pool);
- if (pb->skip_descendants)
- {
- if (!pb->skip_this)
- SVN_ERR(remember_skipped_tree(pb->edit_baton, local_abspath));
-
- return SVN_NO_ERROR;
- }
+ if (pb->skip_this)
+ return SVN_NO_ERROR;
SVN_ERR(check_path_under_root(pb->local_abspath, base, pool));
@@ -2128,13 +2117,9 @@ add_directory(const char *path,
SVN_ERR(make_dir_baton(&db, path, eb, pb, TRUE, pool));
*child_baton = db;
- if (pb->skip_descendants)
+ if (pb->skip_this)
{
- if (!pb->skip_this)
- SVN_ERR(remember_skipped_tree(eb, db->local_abspath));
-
db->skip_this = TRUE;
- db->skip_descendants = TRUE;
db->already_notified = TRUE;
return SVN_NO_ERROR;
@@ -2231,7 +2216,6 @@ add_directory(const char *path,
SVN_ERR(remember_skipped_tree(eb, db->local_abspath));
db->skip_this = TRUE;
- db->skip_descendants = TRUE;
db->already_notified = TRUE;
/* ### TODO: Also print victim_path in the skip msg. */
@@ -2416,7 +2400,6 @@ add_directory(const char *path,
SVN_ERR(remember_skipped_tree(eb, db->local_abspath));
db->skip_this = TRUE;
- db->skip_descendants = TRUE;
db->already_notified = TRUE;
do_notification(eb, db->local_abspath, svn_node_unknown,
@@ -2486,13 +2469,9 @@ open_directory(const char *path,
/* We should have a write lock on every directory touched. */
SVN_ERR(svn_wc__write_check(eb->db, db->local_abspath, pool));
- if (pb->skip_descendants)
+ if (pb->skip_this)
{
- if (!pb->skip_this)
- SVN_ERR(remember_skipped_tree(eb, db->local_abspath));
-
db->skip_this = TRUE;
- db->skip_descendants = TRUE;
db->already_notified = TRUE;
db->bump_info->skipped = TRUE;
@@ -2529,7 +2508,6 @@ open_directory(const char *path,
SVN_ERR(remember_skipped_tree(eb, db->local_abspath));
db->skip_this = TRUE;
- db->skip_descendants = TRUE;
db->already_notified = TRUE;
do_notification(eb, db->local_abspath, svn_node_unknown,
@@ -2566,7 +2544,6 @@ open_directory(const char *path,
tree_conflict->reason != svn_wc_conflict_reason_replaced)
{
SVN_ERR(remember_skipped_tree(eb, db->local_abspath));
- db->skip_descendants = TRUE;
db->skip_this = TRUE;
return SVN_NO_ERROR;
@@ -2797,7 +2774,7 @@ close_directory(void *dir_baton,
SVN_ERR(accumulate_last_change(&new_changed_rev,
&new_changed_date,
&new_changed_author,
- eb->db, db->local_abspath, entry_props,
+ entry_props,
pool, pool));
}
@@ -3035,14 +3012,10 @@ add_file(const char *path,
SVN_ERR(make_file_baton(&fb, pb, path, TRUE, pool));
*file_baton = fb;
- if (pb->skip_descendants)
+ if (pb->skip_this)
{
- if (!pb->skip_this)
- SVN_ERR(remember_skipped_tree(eb, fb->local_abspath));
-
fb->skip_this = TRUE;
fb->already_notified = TRUE;
-
return SVN_NO_ERROR;
}
@@ -3322,14 +3295,10 @@ open_file(const char *path,
SVN_ERR(make_file_baton(&fb, pb, path, FALSE, pool));
*file_baton = fb;
- if (pb->skip_descendants)
+ if (pb->skip_this)
{
- if (!pb->skip_this)
- SVN_ERR(remember_skipped_tree(eb, fb->local_abspath));
-
fb->skip_this = TRUE;
fb->already_notified = TRUE;
-
return SVN_NO_ERROR;
}
@@ -4099,7 +4068,6 @@ close_file(void *file_baton,
SVN_ERR(accumulate_last_change(&new_changed_rev,
&new_changed_date,
&new_changed_author,
- eb->db, fb->local_abspath,
entry_props,
pool, pool));
@@ -5550,7 +5518,6 @@ svn_wc_add_repos_file4(svn_wc_context_t
SVN_ERR(accumulate_last_change(&changed_rev,
&changed_date,
&changed_author,
- db, local_abspath,
entry_props, pool, pool));
}
Modified: subversion/branches/performance/subversion/libsvn_wc/util.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_wc/util.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_wc/util.c (original)
+++ subversion/branches/performance/subversion/libsvn_wc/util.c Thu Jan 6 19:15:40 2011
@@ -642,7 +642,7 @@ svn_wc__status2_from_3(svn_wc_status2_t
if (old_status->versioned
&& old_status->conflicted
&& old_status->node_status != svn_wc_status_obstructed
- && (old_status->kind == svn_node_file
+ && (old_status->kind == svn_node_file
|| old_status->node_status != svn_wc_status_missing))
{
svn_boolean_t text_conflict_p, prop_conflict_p;
Modified: subversion/branches/performance/subversion/libsvn_wc/wc-metadata.sql
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_wc/wc-metadata.sql?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_wc/wc-metadata.sql (original)
+++ subversion/branches/performance/subversion/libsvn_wc/wc-metadata.sql Thu Jan 6 19:15:40 2011
@@ -492,9 +492,9 @@ INSERT INTO NODES (
changed_revision, changed_date, changed_author,
checksum, properties, translated_size, last_mod_time,
dav_cache, symlink_target, file_external )
-SELECT wc_id, local_relpath, 0 AS op_depth, parent_relpath,
+SELECT wc_id, local_relpath, 0 /*op_depth*/, parent_relpath,
repos_id, repos_relpath, revnum,
- presence, depth, NULL AS moved_here, NULL AS moved_to, kind,
+ presence, depth, NULL /*moved_here*/, NULL /*moved_to*/, kind,
changed_rev, changed_date, changed_author,
checksum, properties, translated_size, last_mod_time,
dav_cache, symlink_target, file_external
@@ -506,12 +506,12 @@ INSERT INTO NODES (
changed_revision, changed_date, changed_author,
checksum, properties, translated_size, last_mod_time,
dav_cache, symlink_target, file_external )
-SELECT wc_id, local_relpath, 2 AS op_depth, parent_relpath,
+SELECT wc_id, local_relpath, 2 /*op_depth*/, parent_relpath,
copyfrom_repos_id, copyfrom_repos_path, copyfrom_revnum,
- presence, depth, NULL AS moved_here, NULL AS moved_to, kind,
+ presence, depth, NULL /*moved_here*/, NULL /*moved_to*/, kind,
changed_rev, changed_date, changed_author,
checksum, properties, translated_size, last_mod_time,
- NULL AS dav_cache, symlink_target, NULL AS file_external
+ NULL /*dav_cache*/, symlink_target, NULL /*file_external*/
FROM WORKING_NODE;
DROP TABLE BASE_NODE;
Modified: subversion/branches/performance/subversion/libsvn_wc/wc-queries.sql
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_wc/wc-queries.sql?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_wc/wc-queries.sql (original)
+++ subversion/branches/performance/subversion/libsvn_wc/wc-queries.sql Thu Jan 6 19:15:40 2011
@@ -516,7 +516,7 @@ INSERT OR REPLACE INTO nodes (
wc_id, local_relpath, op_depth, parent_relpath, presence, kind, checksum,
changed_revision, changed_date, changed_author, depth, symlink_target,
translated_size, last_mod_time, properties)
-SELECT wc_id, local_relpath, ?3 AS op_depth, parent_relpath, ?4 AS presence,
+SELECT wc_id, local_relpath, ?3 /*op_depth*/, parent_relpath, ?4 /*presence*/,
kind, checksum, changed_revision, changed_date, changed_author, depth,
symlink_target, translated_size, last_mod_time, properties
FROM nodes
@@ -527,7 +527,7 @@ INSERT OR REPLACE INTO nodes (
wc_id, local_relpath, op_depth, parent_relpath, presence, kind, checksum,
changed_revision, changed_date, changed_author, depth, symlink_target,
translated_size, last_mod_time, properties)
-SELECT wc_id, local_relpath, ?3 AS op_depth, parent_relpath, ?4 AS presence,
+SELECT wc_id, local_relpath, ?3 /*op_depth*/, parent_relpath, ?4 /*presence*/,
kind, checksum, changed_revision, changed_date, changed_author, depth,
symlink_target, translated_size, last_mod_time, properties
FROM nodes
@@ -541,7 +541,7 @@ INSERT INTO nodes (
revision, presence, depth, kind, changed_revision, changed_date,
changed_author, checksum, properties, translated_size, last_mod_time,
symlink_target )
-SELECT wc_id, local_relpath, ?3 AS op_depth, parent_relpath, repos_id,
+SELECT wc_id, local_relpath, ?3 /*op_depth*/, parent_relpath, repos_id,
repos_path, revision, presence, depth, kind, changed_revision,
changed_date, changed_author, checksum, properties, translated_size,
last_mod_time, symlink_target
@@ -554,8 +554,8 @@ INSERT INTO nodes (
revision, presence, depth, kind, changed_revision, changed_date,
changed_author, checksum, properties, translated_size, last_mod_time,
symlink_target )
-SELECT wc_id, local_relpath, ?3 AS op_depth, parent_relpath, repos_id,
- repos_path, revision, ?4 AS presence, depth, kind, changed_revision,
+SELECT wc_id, local_relpath, ?3 /*op_depth*/, parent_relpath, repos_id,
+ repos_path, revision, ?4 /*presence*/, depth, kind, changed_revision,
changed_date, changed_author, checksum, properties, translated_size,
last_mod_time, symlink_target
FROM nodes
@@ -607,8 +607,8 @@ INSERT OR REPLACE INTO nodes (
repos_path, revision, presence, depth, kind, changed_revision,
changed_date, changed_author, checksum, properties, translated_size,
last_mod_time, symlink_target )
-SELECT wc_id, ?3 AS local_relpath, ?4 AS op_depth, ?5 AS parent_relpath,
- ?6 AS repos_id, ?7 AS repos_path, ?8 AS revision, ?9 AS presence, depth,
+SELECT wc_id, ?3 /*local_relpath*/, ?4 /*op_depth*/, ?5 /*parent_relpath*/,
+ ?6 /*repos_id*/, ?7 /*repos_path*/, ?8 /*revision*/, ?9 /*presence*/, depth,
kind, changed_revision, changed_date, changed_author, checksum, properties,
translated_size, last_mod_time, symlink_target
FROM nodes
@@ -620,8 +620,8 @@ INSERT OR REPLACE INTO nodes (
revision, presence, depth, kind, changed_revision, changed_date,
changed_author, checksum, properties, translated_size, last_mod_time,
symlink_target )
-SELECT wc_id, ?3 AS local_relpath, ?4 AS op_depth, ?5 AS parent_relpath,
- ?6 AS repos_id, ?7 AS repos_path, ?8 AS revision, ?9 AS presence, depth,
+SELECT wc_id, ?3 /*local_relpath*/, ?4 /*op_depth*/, ?5 /*parent_relpath*/,
+ ?6 /*repos_id*/, ?7 /*repos_path*/, ?8 /*revision*/, ?9 /*presence*/, depth,
kind, changed_revision, changed_date, changed_author, checksum, properties,
translated_size, last_mod_time, symlink_target
FROM nodes
@@ -634,7 +634,7 @@ INSERT OR REPLACE INTO actual_node (
wc_id, local_relpath, parent_relpath, properties,
conflict_old, conflict_new, conflict_working,
prop_reject, changelist, text_mod, tree_conflict_data )
-SELECT wc_id, ?3 AS local_relpath, ?4 AS parent_relpath, properties,
+SELECT wc_id, ?3 /*local_relpath*/, ?4 /*parent_relpath*/, properties,
conflict_old, conflict_new, conflict_working,
prop_reject, changelist, text_mod, tree_conflict_data
FROM actual_node
Modified: subversion/branches/performance/subversion/libsvn_wc/wc.h
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_wc/wc.h?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_wc/wc.h (original)
+++ subversion/branches/performance/subversion/libsvn_wc/wc.h Thu Jan 6 19:15:40 2011
@@ -122,7 +122,7 @@ extern "C" {
* the working copy.
*
* The change from 19 to 20 introduces NODES and drops BASE_NODE and
- * WORKING_NODE, op_depth is always 0 or 2.
+ * WORKING_NODE, op_depth is always 0 or 2.
*
* The change from 20 to 21 moved tree conflict storage from the
* parent to the conflicted node.
Modified: subversion/branches/performance/subversion/libsvn_wc/wc_db.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_wc/wc_db.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_wc/wc_db.c (original)
+++ subversion/branches/performance/subversion/libsvn_wc/wc_db.c Thu Jan 6 19:15:40 2011
@@ -170,7 +170,7 @@ typedef struct insert_base_baton_t {
} insert_base_baton_t;
-typedef struct {
+typedef struct insert_working_baton_t {
/* common to all insertions into WORKING (including NODE_DATA) */
svn_wc__db_status_t presence;
svn_wc__db_kind_t kind;
@@ -723,7 +723,7 @@ blank_ibb(insert_base_baton_t *pibb)
0 1 2 3 4
normal
- A normal
+ A normal
A/B normal normal
A/B/C not-pres normal
A/B/C/D normal
@@ -733,7 +733,7 @@ blank_ibb(insert_base_baton_t *pibb)
Now an update that adds base nodes for A/B/C, A/B/C/D and A/B/C/D/E
must extend the A/B deletion:
-
+
0 1 2 3 4
normal
A normal
@@ -2489,10 +2489,10 @@ svn_wc__db_pristine_get_sha1(const svn_c
}
-/* Delete the pristine text referenced by SHA1_CHECKSUM in the database
- * referenced by PDH. */
+/* Delete the pristine text referenced by SHA1_CHECKSUM from the pristine
+ * store of WCROOT. Delete both the database row and the file on disk. */
static svn_error_t *
-pristine_remove(svn_wc__db_pdh_t *pdh,
+pristine_remove(svn_wc__db_wcroot_t *wcroot,
const svn_checksum_t *sha1_checksum,
apr_pool_t *scratch_pool)
{
@@ -2500,13 +2500,13 @@ pristine_remove(svn_wc__db_pdh_t *pdh,
const char *pristine_abspath;
/* Remove the DB row. */
- SVN_ERR(svn_sqlite__get_statement(&stmt, pdh->wcroot->sdb,
+ SVN_ERR(svn_sqlite__get_statement(&stmt, wcroot->sdb,
STMT_DELETE_PRISTINE));
SVN_ERR(svn_sqlite__bind_checksum(stmt, 1, sha1_checksum, scratch_pool));
SVN_ERR(svn_sqlite__update(NULL, stmt));
/* Remove the file */
- SVN_ERR(get_pristine_fname(&pristine_abspath, pdh->wcroot->abspath,
+ SVN_ERR(get_pristine_fname(&pristine_abspath, wcroot->abspath,
sha1_checksum, TRUE /* create_subdir */,
scratch_pool, scratch_pool));
SVN_ERR(svn_io_remove_file2(pristine_abspath, TRUE /* ignore_enoent */,
@@ -2577,31 +2577,21 @@ svn_wc__db_pristine_remove(svn_wc__db_t
/* If not referenced, remove the PRISTINE table row and the file. */
if (! is_referenced)
{
- SVN_ERR(pristine_remove(pdh, sha1_checksum, scratch_pool));
+ SVN_ERR(pristine_remove(pdh->wcroot, sha1_checksum, scratch_pool));
}
return SVN_NO_ERROR;
}
-svn_error_t *
-svn_wc__db_pristine_cleanup(svn_wc__db_t *db,
- const char *wri_abspath,
- apr_pool_t *scratch_pool)
+static svn_error_t *
+pristine_cleanup_wcroot(svn_wc__db_wcroot_t *wcroot,
+ apr_pool_t *scratch_pool)
{
- svn_wc__db_pdh_t *pdh;
- const char *local_relpath;
svn_sqlite__stmt_t *stmt;
- SVN_ERR_ASSERT(svn_dirent_is_absolute(wri_abspath));
-
- SVN_ERR(svn_wc__db_pdh_parse_local_abspath(&pdh, &local_relpath, db,
- wri_abspath, svn_sqlite__mode_readonly,
- scratch_pool, scratch_pool));
- VERIFY_USABLE_PDH(pdh);
-
/* Find each unreferenced pristine in the DB and remove it. */
- SVN_ERR(svn_sqlite__get_statement(&stmt, pdh->wcroot->sdb,
+ SVN_ERR(svn_sqlite__get_statement(&stmt, wcroot->sdb,
STMT_SELECT_UNREFERENCED_PRISTINES));
while (1)
{
@@ -2614,7 +2604,7 @@ svn_wc__db_pristine_cleanup(svn_wc__db_t
SVN_ERR(svn_sqlite__column_checksum(&sha1_checksum, stmt, 0,
scratch_pool));
- SVN_ERR(pristine_remove(pdh, sha1_checksum, scratch_pool));
+ SVN_ERR(pristine_remove(wcroot, sha1_checksum, scratch_pool));
}
SVN_ERR(svn_sqlite__reset(stmt));
@@ -2623,6 +2613,27 @@ svn_wc__db_pristine_cleanup(svn_wc__db_t
svn_error_t *
+svn_wc__db_pristine_cleanup(svn_wc__db_t *db,
+ const char *wri_abspath,
+ apr_pool_t *scratch_pool)
+{
+ svn_wc__db_pdh_t *pdh;
+ const char *local_relpath;
+
+ SVN_ERR_ASSERT(svn_dirent_is_absolute(wri_abspath));
+
+ SVN_ERR(svn_wc__db_pdh_parse_local_abspath(&pdh, &local_relpath, db,
+ wri_abspath, svn_sqlite__mode_readonly,
+ scratch_pool, scratch_pool));
+ VERIFY_USABLE_PDH(pdh);
+
+ SVN_ERR(pristine_cleanup_wcroot(pdh->wcroot, scratch_pool));
+
+ return SVN_NO_ERROR;
+}
+
+
+svn_error_t *
svn_wc__db_pristine_check(svn_boolean_t *present,
svn_wc__db_t *db,
const char *wri_abspath,
@@ -3221,7 +3232,7 @@ op_depth_for_copy(apr_int64_t *op_depth,
}
}
SVN_ERR(svn_sqlite__reset(stmt));
-
+
return SVN_NO_ERROR;
}
@@ -4109,7 +4120,7 @@ read_all_tree_conflicts(apr_hash_t **tre
const char *conflict_data;
const svn_skel_t *skel;
const svn_wc_conflict_description2_t *conflict;
-
+
svn_pool_clear(iterpool);
child_relpath = svn_sqlite__column_text(stmt, 0, NULL);
@@ -4728,7 +4739,7 @@ info_below_working(svn_boolean_t *have_b
*have_work = TRUE;
else
*have_base = TRUE;
-
+
*status = svn_sqlite__column_token(stmt, 3, presence_map);
if (op_depth > 0)
SVN_ERR(convert_to_working_status(status, *status));
@@ -4855,7 +4866,7 @@ svn_wc__db_temp_op_delete(svn_wc__db_t *
VERIFY_USABLE_PDH(b.pdh);
/* These two for svn_wc__db_temp_forget_directory */
- b.db = db;
+ b.db = db;
b.local_abspath = local_abspath;
SVN_ERR(svn_sqlite__with_transaction(b.pdh->wcroot->sdb, temp_op_delete_txn,
@@ -6176,7 +6187,7 @@ svn_wc__db_global_commit(svn_wc__db_t *d
cb.new_revision = new_revision;
- cb.changed_rev = changed_revision;
+ cb.changed_rev = changed_revision;
cb.changed_date = changed_date;
cb.changed_author = changed_author;
cb.new_checksum = new_checksum;
@@ -8751,7 +8762,7 @@ svn_wc__db_temp_op_set_file_external(svn
svn_boolean_t got_row;
SVN_ERR_ASSERT(svn_dirent_is_absolute(local_abspath));
- SVN_ERR_ASSERT(!repos_relpath
+ SVN_ERR_ASSERT(!repos_relpath
|| svn_relpath_is_canonical(repos_relpath, scratch_pool));
SVN_ERR(svn_wc__db_pdh_parse_local_abspath(&pdh, &local_relpath, db,
Modified: subversion/branches/performance/subversion/libsvn_wc/wc_db.h
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_wc/wc_db.h?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_wc/wc_db.h (original)
+++ subversion/branches/performance/subversion/libsvn_wc/wc_db.h Thu Jan 6 19:15:40 2011
@@ -2414,7 +2414,7 @@ svn_wc__db_temp_op_set_rev_and_repos_rel
REPOS_RELPATH is not NULL, apply REPOS_RELPATH, REPOS_ROOT_URL and
REPOS_UUID.
Perform all temporary allocations in SCRATCH_POOL.
-
+
### For 1.7 this should probably become a proper tree conflict and
### just handled by putting a base directory below the existing
### working node.
Modified: subversion/branches/performance/subversion/libsvn_wc/workqueue.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_wc/workqueue.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_wc/workqueue.c (original)
+++ subversion/branches/performance/subversion/libsvn_wc/workqueue.c Thu Jan 6 19:15:40 2011
@@ -480,8 +480,8 @@ svn_wc__wq_add_revert(svn_boolean_t *wil
/* Removes a BASE_NODE and all it's data, leaving any adds and copies as is.
Do this as a depth first traversal to make sure than any parent still exists
- on error conditions.
-
+ on error conditions.
+
### This function needs review for 4th tree behavior.*/
static svn_error_t *
remove_base_node(svn_wc__db_t *db,
@@ -712,7 +712,7 @@ run_deletion_postcommit(svn_wc__db_t *db
db, local_abspath,
FALSE, FALSE, cancel_func, cancel_baton, scratch_pool));
- /* If the parent entry's working rev 'lags' behind new_rev...
+ /* If the parent entry's working rev 'lags' behind new_rev...
### Maybe we should also add a not-present node if the
### deleted node was switched? */
if (new_revision > parent_revision)
Modified: subversion/branches/performance/subversion/mod_authz_svn/mod_authz_svn.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/mod_authz_svn/mod_authz_svn.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/mod_authz_svn/mod_authz_svn.c (original)
+++ subversion/branches/performance/subversion/mod_authz_svn/mod_authz_svn.c Thu Jan 6 19:15:40 2011
@@ -46,7 +46,7 @@
extern module AP_MODULE_DECLARE_DATA authz_svn_module;
-typedef struct {
+typedef struct authz_svn_config_rec {
int authoritative;
int anonymous;
int no_auth_when_anon_ok;
@@ -166,7 +166,7 @@ get_access_conf(request_rec *r, authz_sv
dav_error *dav_err;
char errbuf[256];
- if (conf->repo_relative_access_file)
+ if (conf->repo_relative_access_file)
{
dav_err = dav_svn_get_repos_path(r, conf->base_path, &repos_path);
if (dav_err) {
@@ -176,12 +176,12 @@ get_access_conf(request_rec *r, authz_sv
access_file = svn_dirent_join_many(r->pool, repos_path, "conf",
conf->repo_relative_access_file,
NULL);
- }
+ }
else
{
access_file = conf->access_file;
}
-
+
ap_log_rerror(APLOG_MARK, APLOG_DEBUG, 0, r,
"Path to authz file is %s", access_file);
Modified: subversion/branches/performance/subversion/mod_dav_svn/dav_svn.h
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/mod_dav_svn/dav_svn.h?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/mod_dav_svn/dav_svn.h (original)
+++ subversion/branches/performance/subversion/mod_dav_svn/dav_svn.h Thu Jan 6 19:15:40 2011
@@ -73,7 +73,7 @@ extern "C" {
* ### only a single FS open; otherwise, it will have to work a bit harder
* ### to keep the things in sync.
*/
-typedef struct {
+typedef struct dav_svn_repos {
apr_pool_t *pool; /* request_rec -> pool */
/* Remember the root URL path of this repository (just a path; no
@@ -175,7 +175,7 @@ enum dav_svn_private_restype {
/* store info about a root in a repository */
-typedef struct {
+typedef struct dav_svn_root {
/* If a root within the FS has been opened, the value is stored here.
Otherwise, this field is NULL. */
svn_fs_root_t *root;
@@ -662,7 +662,7 @@ dav_svn__post_create_txn(const dav_resou
/*** authz.c ***/
/* A baton needed by dav_svn__authz_read_func(). */
-typedef struct
+typedef struct dav_svn__authz_read_baton
{
/* The original request, needed to generate a subrequest. */
request_rec *r;
@@ -809,7 +809,7 @@ dav_svn__build_uri(const dav_svn_repos *
### URIs which we may need to parse. it also ignores any scheme, host,
### and port in the URI and simply assumes it refers to the same server.
*/
-typedef struct {
+typedef struct dav_svn__uri_info {
svn_revnum_t rev;
const char *repos_path;
const char *activity_id;
Modified: subversion/branches/performance/subversion/mod_dav_svn/deadprops.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/mod_dav_svn/deadprops.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/mod_dav_svn/deadprops.c (original)
+++ subversion/branches/performance/subversion/mod_dav_svn/deadprops.c Thu Jan 6 19:15:40 2011
@@ -180,7 +180,7 @@ save_value(dav_db *db, const dav_prop_na
else
return dav_svn__new_error(db->p, HTTP_CONFLICT, 0,
"Properties may only be defined in the "
- SVN_DAV_PROP_NS_SVN " and "
+ SVN_DAV_PROP_NS_SVN " and "
SVN_DAV_PROP_NS_CUSTOM " namespaces.");
}
@@ -503,7 +503,7 @@ db_store(dav_db *db,
if (absent && ! elem->first_child)
/* ### better error check */
return dav_svn__new_error(pool, HTTP_INTERNAL_SERVER_ERROR, 0,
- apr_psprintf(pool,
+ apr_psprintf(pool,
"'%s' cannot be specified on the "
"value without specifying an "
"expectation",
@@ -762,7 +762,7 @@ db_apply_rollback(dav_db *db, dav_deadpr
if (! db->resource->info->revprop_error)
return NULL;
-
+
/* Returning the original revprop change error here will cause this
detailed error to get returned to the client in preference to the
more generic error created by mod_dav. */
Modified: subversion/branches/performance/subversion/mod_dav_svn/mod_dav_svn.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/mod_dav_svn/mod_dav_svn.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/mod_dav_svn/mod_dav_svn.c (original)
+++ subversion/branches/performance/subversion/mod_dav_svn/mod_dav_svn.c Thu Jan 6 19:15:40 2011
@@ -50,7 +50,7 @@
#define PATHAUTHZ_BYPASS_ARG "short_circuit"
/* per-server configuration */
-typedef struct {
+typedef struct server_conf_t {
const char *special_uri;
} server_conf_t;
@@ -73,7 +73,7 @@ enum path_authz_conf {
};
/* per-dir configuration */
-typedef struct {
+typedef struct dir_conf_t {
const char *fs_path; /* path to the SVN FS */
const char *repo_name; /* repository name */
const char *xslt_uri; /* XSL transform URI */
@@ -663,7 +663,7 @@ merge_xml_filter_insert(request_rec *r)
}
-typedef struct {
+typedef struct merge_ctx_t {
apr_bucket_brigade *bb;
apr_xml_parser *parser;
apr_pool_t *pool;
Modified: subversion/branches/performance/subversion/mod_dav_svn/reports/replay.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/mod_dav_svn/reports/replay.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/mod_dav_svn/reports/replay.c (original)
+++ subversion/branches/performance/subversion/mod_dav_svn/reports/replay.c Thu Jan 6 19:15:40 2011
@@ -42,7 +42,7 @@
#include "../dav_svn.h"
-typedef struct {
+typedef struct edit_baton_t {
apr_bucket_brigade *bb;
ap_filter_t *output;
svn_boolean_t started;
Modified: subversion/branches/performance/subversion/mod_dav_svn/reports/update.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/mod_dav_svn/reports/update.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/mod_dav_svn/reports/update.c (original)
+++ subversion/branches/performance/subversion/mod_dav_svn/reports/update.c Thu Jan 6 19:15:40 2011
@@ -43,7 +43,7 @@
#include "../dav_svn.h"
-typedef struct {
+typedef struct update_ctx_t {
const dav_resource *resource;
/* the revision we are updating to. used to generated IDs. */
Modified: subversion/branches/performance/subversion/mod_dav_svn/repos.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/mod_dav_svn/repos.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/mod_dav_svn/repos.c (original)
+++ subversion/branches/performance/subversion/mod_dav_svn/repos.c Thu Jan 6 19:15:40 2011
@@ -71,7 +71,7 @@ struct dav_stream {
/* Convenience structure that facilitates combined memory allocation of
a dav_resource and dav_resource_private pair. */
-typedef struct {
+typedef struct dav_resource_combined {
dav_resource res;
dav_resource_private priv;
} dav_resource_combined;
@@ -3049,7 +3049,7 @@ set_headers(request_rec *r, const dav_re
}
-typedef struct {
+typedef struct diff_ctx_t {
ap_filter_t *output;
apr_pool_t *pool;
} diff_ctx_t;
@@ -3932,7 +3932,7 @@ move_resource(dav_resource *src,
}
-typedef struct {
+typedef struct walker_ctx_t {
/* the input walk parameters */
const dav_walk_params *params;
@@ -4054,7 +4054,7 @@ do_walk(walker_ctx_t *ctx, int depth)
if (params->walk_type & DAV_WALKTYPE_AUTH)
{
const char *repos_relpath =
- apr_pstrcat(iterpool,
+ apr_pstrcat(iterpool,
apr_pstrmemdup(iterpool,
ctx->repos_path->data,
ctx->repos_path->len),
@@ -4103,7 +4103,7 @@ do_walk(walker_ctx_t *ctx, int depth)
ctx->uri->len = uri_len;
ctx->repos_path->len = repos_len;
}
-
+
svn_pool_destroy(iterpool);
return NULL;
@@ -4379,7 +4379,7 @@ int dav_svn__method_post(request_rec *r)
the client with (hopefully) some helpful information. */
if (derr)
return dav_svn__error_response_tag(r, derr);
-
+
return OK;
}
Modified: subversion/branches/performance/subversion/mod_dav_svn/util.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/mod_dav_svn/util.c?rev=1056015&r1=1056014&r2=1056015&view=diff
==============================================================================
--- subversion/branches/performance/subversion/mod_dav_svn/util.c (original)
+++ subversion/branches/performance/subversion/mod_dav_svn/util.c Thu Jan 6 19:15:40 2011
@@ -717,20 +717,20 @@ request_body_to_string(svn_string_t **re
{
const char *data;
apr_size_t len;
-
+
if (APR_BUCKET_IS_EOS(bucket))
{
seen_eos = 1;
break;
}
-
+
if (APR_BUCKET_IS_METADATA(bucket))
continue;
-
+
status = apr_bucket_read(bucket, &data, &len, APR_BLOCK_READ);
if (status != APR_SUCCESS)
goto cleanup;
-
+
total_read += len;
if (limit_req_body && total_read > limit_req_body)
{
@@ -740,10 +740,10 @@ request_body_to_string(svn_string_t **re
result = HTTP_REQUEST_ENTITY_TOO_LARGE;
goto cleanup;
}
-
+
svn_stringbuf_appendbytes(buf, data, len);
}
-
+
apr_brigade_cleanup(brigade);
}
while (!seen_eos);
@@ -758,7 +758,7 @@ request_body_to_string(svn_string_t **re
cleanup:
apr_brigade_destroy(brigade);
-
+
/* Apache will supply a default error, plus the error log above. */
return result;
}