subversion-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From stef...@apache.org
Subject svn commit: r1190623 [1/2] - in /subversion/trunk: ./ subversion/include/ subversion/include/private/ subversion/libsvn_client/ subversion/libsvn_delta/ subversion/libsvn_diff/ subversion/libsvn_fs_base/ subversion/libsvn_fs_fs/ subversion/libsvn_ra/ s...
Date Fri, 28 Oct 2011 22:09:54 GMT
Author: stefan2
Date: Fri Oct 28 22:09:51 2011
New Revision: 1190623

URL: http://svn.apache.org/viewvc?rev=1190623&view=rev
Log:
Reintegrate integrate-string-improvements branch into /trunk.

Modified:
    subversion/trunk/   (props changed)
    subversion/trunk/subversion/include/private/svn_adler32.h   (props changed)
    subversion/trunk/subversion/include/private/svn_string_private.h   (props changed)
    subversion/trunk/subversion/include/private/svn_temp_serializer.h   (props changed)
    subversion/trunk/subversion/include/svn_string.h
    subversion/trunk/subversion/libsvn_client/add.c
    subversion/trunk/subversion/libsvn_client/diff.c
    subversion/trunk/subversion/libsvn_client/merge.c
    subversion/trunk/subversion/libsvn_client/patch.c
    subversion/trunk/subversion/libsvn_delta/compose_delta.c
    subversion/trunk/subversion/libsvn_delta/svndiff.c
    subversion/trunk/subversion/libsvn_delta/text_delta.c
    subversion/trunk/subversion/libsvn_diff/diff_file.c
    subversion/trunk/subversion/libsvn_diff/diff_memory.c
    subversion/trunk/subversion/libsvn_diff/parse-diff.c
    subversion/trunk/subversion/libsvn_fs_base/tree.c
    subversion/trunk/subversion/libsvn_fs_fs/lock.c
    subversion/trunk/subversion/libsvn_fs_fs/temp_serializer.c   (props changed)
    subversion/trunk/subversion/libsvn_fs_fs/temp_serializer.h   (props changed)
    subversion/trunk/subversion/libsvn_fs_fs/tree.c
    subversion/trunk/subversion/libsvn_ra/ra_loader.c
    subversion/trunk/subversion/libsvn_ra_neon/fetch.c
    subversion/trunk/subversion/libsvn_ra_neon/file_revs.c
    subversion/trunk/subversion/libsvn_ra_neon/get_dated_rev.c
    subversion/trunk/subversion/libsvn_ra_neon/get_deleted_rev.c
    subversion/trunk/subversion/libsvn_ra_neon/get_location_segments.c
    subversion/trunk/subversion/libsvn_ra_neon/get_locations.c
    subversion/trunk/subversion/libsvn_ra_neon/get_locks.c
    subversion/trunk/subversion/libsvn_ra_neon/lock.c
    subversion/trunk/subversion/libsvn_ra_neon/log.c
    subversion/trunk/subversion/libsvn_ra_neon/merge.c
    subversion/trunk/subversion/libsvn_ra_neon/mergeinfo.c
    subversion/trunk/subversion/libsvn_ra_neon/options.c
    subversion/trunk/subversion/libsvn_ra_neon/props.c
    subversion/trunk/subversion/libsvn_ra_neon/replay.c
    subversion/trunk/subversion/libsvn_ra_neon/util.c
    subversion/trunk/subversion/libsvn_ra_serf/blame.c
    subversion/trunk/subversion/libsvn_ra_serf/commit.c
    subversion/trunk/subversion/libsvn_ra_serf/mergeinfo.c
    subversion/trunk/subversion/libsvn_ra_serf/util.c
    subversion/trunk/subversion/libsvn_subr/adler32.c   (props changed)
    subversion/trunk/subversion/libsvn_subr/cmdline.c
    subversion/trunk/subversion/libsvn_subr/config.c
    subversion/trunk/subversion/libsvn_subr/config_file.c
    subversion/trunk/subversion/libsvn_subr/config_win.c
    subversion/trunk/subversion/libsvn_subr/hash.c   (props changed)
    subversion/trunk/subversion/libsvn_subr/log.c
    subversion/trunk/subversion/libsvn_subr/mergeinfo.c
    subversion/trunk/subversion/libsvn_subr/opt.c
    subversion/trunk/subversion/libsvn_subr/prompt.c
    subversion/trunk/subversion/libsvn_subr/quoprint.c
    subversion/trunk/subversion/libsvn_subr/subst.c
    subversion/trunk/subversion/libsvn_subr/svn_base64.c
    subversion/trunk/subversion/libsvn_subr/svn_string.c
    subversion/trunk/subversion/libsvn_subr/svn_temp_serializer.c   (props changed)
    subversion/trunk/subversion/libsvn_subr/win32_xlate.c
    subversion/trunk/subversion/libsvn_subr/xml.c
    subversion/trunk/subversion/libsvn_wc/props.c
    subversion/trunk/subversion/mod_dav_svn/util.c
    subversion/trunk/subversion/svn/blame-cmd.c
    subversion/trunk/subversion/svn/diff-cmd.c
    subversion/trunk/subversion/svn/info-cmd.c
    subversion/trunk/subversion/svn/list-cmd.c
    subversion/trunk/subversion/svn/log-cmd.c
    subversion/trunk/subversion/svn/propedit-cmd.c
    subversion/trunk/subversion/svn/props.c
    subversion/trunk/subversion/svn/status-cmd.c
    subversion/trunk/subversion/svn/status.c
    subversion/trunk/subversion/svn/util.c
    subversion/trunk/subversion/svnadmin/main.c
    subversion/trunk/subversion/svndumpfilter/main.c
    subversion/trunk/subversion/svnlook/main.c
    subversion/trunk/subversion/svnrdump/dump_editor.c
    subversion/trunk/subversion/svnrdump/svnrdump.c
    subversion/trunk/subversion/svnserve/serve.c
    subversion/trunk/subversion/svnsync/main.c
    subversion/trunk/subversion/svnsync/sync.c
    subversion/trunk/subversion/tests/libsvn_diff/diff-diff3-test.c
    subversion/trunk/subversion/tests/libsvn_fs_base/strings-reps-test.c
    subversion/trunk/subversion/tests/libsvn_subr/path-test.c
    subversion/trunk/subversion/tests/libsvn_subr/stream-test.c
    subversion/trunk/subversion/tests/libsvn_subr/string-test.c
    subversion/trunk/subversion/tests/libsvn_subr/subst_translate-test.c
    subversion/trunk/subversion/tests/svn_test_fs.c

Propchange: subversion/trunk/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Oct 28 22:09:51 2011
@@ -23,6 +23,7 @@
 /subversion/branches/integrate-partial-getter:1072558-1076552
 /subversion/branches/integrate-readline-speedup:1072553-1072555
 /subversion/branches/integrate-stream-api-extensions:1068695-1072516
+/subversion/branches/integrate-string-improvements:1068251-1190617
 /subversion/branches/integrate-txdelta-caching:1072541-1078213
 /subversion/branches/issue-2779-dev:965496-984198
 /subversion/branches/issue-2843-dev:871432-874179
@@ -37,7 +38,7 @@
 /subversion/branches/log-g-performance:870941-871032
 /subversion/branches/merge-skips-obstructions:874525-874615
 /subversion/branches/nfc-nfd-aware-client:870276,870376
-/subversion/branches/performance:979193,980118,981087,981090,981189,981194,981287,981684,981827,982043,982355,983398,983406,983430,983474,983488,983490,983760,983764,983766,983770,984927,984973,984984,985014,985037,985046,985472,985477,985482,985487-985488,985493,985497,985500,985514,985601,985603,985606,985669,985695,986453,986465,986485,986491-986492,986517,986521,986605,986608,986817,986832,987865,987868-987869,987872,987886-987888,987893,988319,988898,990330,990533,990535-990537,990541,990568,990572,990574-990575,990600,990759,992899,992904,992911,993127,993141,994956,995478,995507,995603,998012,998858,999098,1001413,1001417,1004291,1022668,1022670,1022676,1022715,1022719,1025660,1025672,1027193,1027203,1027206,1027214,1027227,1028077,1028092,1028094,1028104,1028107,1028111,1028354,1029038,1029042-1029043,1029054-1029055,1029062-1029063,1029078,1029080,1029090,1029092-1029093,1029111,1029151,1029158,1029229-1029230,1029232,1029335-1029336,1029339-1029340,1029342,1029344,
 1030763,1030827,1031203,1031235,1032285,1032333,1033040,1033057,1033294,1035869,1035882,1039511,1043705,1053735,1056015,1066452,1067683,1067697-1078365
+/subversion/branches/performance:979193,980118,981087,981090,981189,981194,981287,981684,981827,982043,982355,983398,983406,983430,983474,983488,983490,983760,983764,983766,983770,984927,984973,984984,985014,985037,985046,985472,985477,985482,985487-985488,985493,985497,985500,985514,985601,985603,985606,985669,985673,985695,985697,986453,986465,986485,986491-986492,986517,986521,986605,986608,986817,986832,987865,987868-987869,987872,987886-987888,987893,988319,988898,990330,990533,990535-990537,990541,990568,990572,990574-990575,990600,990759,992899,992904,992911,993127,993141,994956,995478,995507,995603,998012,998858,999098,1001413,1001417,1004291,1022668,1022670,1022676,1022715,1022719,1025660,1025672,1027193,1027203,1027206,1027214,1027227,1028077,1028092,1028094,1028104,1028107,1028111,1028354,1029038,1029042-1029043,1029054-1029055,1029062-1029063,1029078,1029080,1029090,1029092-1029093,1029111,1029151,1029158,1029229-1029230,1029232,1029335-1029336,1029339-1029340,10
 29342,1029344,1030763,1030827,1031203,1031235,1032285,1032333,1033040,1033057,1033294,1035869,1035882,1039511,1043705,1053735,1056015,1066452,1067683,1067697-1078365
 /subversion/branches/py-tests-as-modules:956579-1033052
 /subversion/branches/ra_serf-digest-authn:875693-876404
 /subversion/branches/reintegrate-improvements:873853-874164

Propchange: subversion/trunk/subversion/include/private/svn_adler32.h
            ('svn:mergeinfo' removed)

Propchange: subversion/trunk/subversion/include/private/svn_string_private.h
            ('svn:mergeinfo' removed)

Propchange: subversion/trunk/subversion/include/private/svn_temp_serializer.h
            ('svn:mergeinfo' removed)

Modified: subversion/trunk/subversion/include/svn_string.h
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/include/svn_string.h?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/include/svn_string.h (original)
+++ subversion/trunk/subversion/include/svn_string.h Fri Oct 28 22:09:51 2011
@@ -129,6 +129,12 @@ typedef struct svn_stringbuf_t
 svn_string_t *
 svn_string_create(const char *cstring, apr_pool_t *pool);
 
+/** Create a truely empty string object (length and blocksize are 0)
+ * @since New in 1.7.
+ */
+svn_string_t *
+svn_string_create_empty(apr_pool_t *pool);
+
 /** Create a new bytestring containing a generic string of bytes
  * (NOT NULL-terminated) */
 svn_string_t *
@@ -194,6 +200,12 @@ svn_stringbuf_create(const char *cstring
 svn_stringbuf_t *
 svn_stringbuf_ncreate(const char *bytes, apr_size_t size, apr_pool_t *pool);
 
+/** Create a truely empty string object (length and blocksize are 0)
+ * @since New in 1.7.
+ */
+svn_stringbuf_t *
+svn_stringbuf_create_empty(apr_pool_t *pool);
+
 /** Create a new empty bytestring with at least @a minimum_size bytes of
  * space available in the memory block.
  *

Modified: subversion/trunk/subversion/libsvn_client/add.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_client/add.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_client/add.c (original)
+++ subversion/trunk/subversion/libsvn_client/add.c Fri Oct 28 22:09:51 2011
@@ -293,7 +293,7 @@ svn_client__get_auto_props(apr_hash_t **
       if (executable)
         apr_hash_set(autoprops.properties, SVN_PROP_EXECUTABLE,
                      strlen(SVN_PROP_EXECUTABLE),
-                     svn_string_create("", pool));
+                     svn_string_create_empty(pool));
     }
 
   *mimetype = autoprops.mimetype;

Modified: subversion/trunk/subversion/libsvn_client/diff.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_client/diff.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_client/diff.c (original)
+++ subversion/trunk/subversion/libsvn_client/diff.c Fri Oct 28 22:09:51 2011
@@ -670,12 +670,12 @@ display_prop_diffs(const apr_array_heade
            Since the diff is not useful anyway for patching properties an
            eol character is appended when needed to remove those pescious
            ' \ No newline at end of file' lines. */
-        tmp = original_value ? original_value : svn_string_create("",
-                                                                  iterpool);
+        tmp = original_value ? original_value 
+                             : svn_string_create_empty(iterpool);
         orig = maybe_append_eol(tmp, iterpool);
 
         tmp = propchange->value ? propchange->value :
-                                  svn_string_create("", iterpool);
+                                  svn_string_create_empty(iterpool);
         val = maybe_append_eol(tmp, iterpool);
 
         SVN_ERR(svn_diff_mem_string_diff(&diff, orig, val, &options,

Modified: subversion/trunk/subversion/libsvn_client/merge.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_client/merge.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_client/merge.c (original)
+++ subversion/trunk/subversion/libsvn_client/merge.c Fri Oct 28 22:09:51 2011
@@ -10426,7 +10426,7 @@ calculate_left_hand_side(const char **ur
   if (!apr_hash_get(subtrees_with_mergeinfo, target_abspath,
                     APR_HASH_KEY_STRING))
     apr_hash_set(subtrees_with_mergeinfo, target_abspath,
-                 APR_HASH_KEY_STRING, svn_string_create("", result_pool));
+                 APR_HASH_KEY_STRING, svn_string_create_empty(result_pool));
 
   /* Get the history (segments) for TARGET_ABSPATH and any of its subtrees
      with explicit mergeinfo. */

Modified: subversion/trunk/subversion/libsvn_client/patch.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_client/patch.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_client/patch.c (original)
+++ subversion/trunk/subversion/libsvn_client/patch.c Fri Oct 28 22:09:51 2011
@@ -670,7 +670,7 @@ init_prop_target(prop_patch_target_t **p
     }
   content->existed = (value != NULL);
   new_prop_target->value = value;
-  new_prop_target->patched_value = svn_stringbuf_create("", result_pool);
+  new_prop_target->patched_value = svn_stringbuf_create_empty(result_pool);
 
 
   /* Wire up the read and write callbacks. */

Modified: subversion/trunk/subversion/libsvn_delta/compose_delta.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_delta/compose_delta.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_delta/compose_delta.c (original)
+++ subversion/trunk/subversion/libsvn_delta/compose_delta.c Fri Oct 28 22:09:51 2011
@@ -774,7 +774,7 @@ svn_txdelta_compose_windows(const svn_tx
   /* Read the description of the delta composition algorithm in
      notes/fs-improvements.txt before going any further.
      You have been warned. */
-  build_baton.new_data = svn_stringbuf_create("", pool);
+  build_baton.new_data = svn_stringbuf_create_empty(pool);
   for (i = 0; i < window_B->num_ops; ++i)
     {
       const svn_txdelta_op_t *const op = &window_B->ops[i];

Modified: subversion/trunk/subversion/libsvn_delta/svndiff.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_delta/svndiff.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_delta/svndiff.c (original)
+++ subversion/trunk/subversion/libsvn_delta/svndiff.c Fri Oct 28 22:09:51 2011
@@ -182,9 +182,9 @@ window_handler(svn_txdelta_window_t *win
 {
   struct encoder_baton *eb = baton;
   apr_pool_t *pool = svn_pool_create(eb->pool);
-  svn_stringbuf_t *instructions = svn_stringbuf_create("", pool);
-  svn_stringbuf_t *i1 = svn_stringbuf_create("", pool);
-  svn_stringbuf_t *header = svn_stringbuf_create("", pool);
+  svn_stringbuf_t *instructions = svn_stringbuf_create_empty(pool);
+  svn_stringbuf_t *i1 = svn_stringbuf_create_empty(pool);
+  svn_stringbuf_t *header = svn_stringbuf_create_empty(pool);
   const svn_string_t *newdata;
   unsigned char ibuf[MAX_INSTRUCTION_LEN], *ip;
   const svn_txdelta_op_t *op;
@@ -254,8 +254,8 @@ window_handler(svn_txdelta_window_t *win
   append_encoded_int(header, instructions->len);
   if (eb->version == 1)
     {
-      svn_stringbuf_t *temp = svn_stringbuf_create("", pool);
-      svn_string_t *tempstr = svn_string_create("", pool);
+      svn_stringbuf_t *temp = svn_stringbuf_create_empty(pool);
+      svn_string_t *tempstr = svn_string_create_empty(pool);
       SVN_ERR(zlib_encode(window->new_data->data, window->new_data->len,
                           temp, eb->compression_level));
       tempstr->data = temp->data;
@@ -431,20 +431,24 @@ decode_size(apr_size_t *val,
   return NULL;
 }
 
-/* Decode the possibly-zlib compressed string that is in IN, into OUT.
-   We expect an integer is prepended to IN that specifies the original
-   size, and that if encoded size == original size, that the remaining
-   data is not compressed.  */
+/* Decode the possibly-zlib compressed string of length INLEN that is in
+   IN, into OUT.  We expect an integer is prepended to IN that specifies
+   the original size, and that if encoded size == original size, that the
+   remaining data is not compressed.
+   In that case, we will simply return pointer into IN as data pointer for
+   OUT.  The caller is expected not to modify the contents of OUT.
+   An error is returned if the decoded length exceeds the given LIMIT.
+ */
 static svn_error_t *
-zlib_decode(svn_stringbuf_t *in, svn_stringbuf_t *out, apr_size_t limit)
+zlib_decode(const unsigned char *in, apr_size_t inLen, svn_stringbuf_t *out,
+            apr_size_t limit)
 {
   apr_size_t len;
-  char *oldplace = in->data;
+  const unsigned char *oldplace = in;
 
   /* First thing in the string is the original length.  */
-  in->data = (char *)decode_size(&len, (unsigned char *)in->data,
-                                 (unsigned char *)in->data+in->len);
-  if (in->data == NULL)
+  in = decode_size(&len, in, in + inLen);
+  if (in == NULL)
     return svn_error_create(SVN_ERR_SVNDIFF_INVALID_COMPRESSED_DATA, NULL,
                             _("Decompression of svndiff data failed: no size"));
   if (len > limit)
@@ -453,33 +457,36 @@ zlib_decode(svn_stringbuf_t *in, svn_str
                               "size too large"));
   /* We need to subtract the size of the encoded original length off the
    *      still remaining input length.  */
-  in->len -= (in->data - oldplace);
-  if (in->len == len)
+  inLen -= (in - oldplace);
+  if (inLen == len)
     {
-      svn_stringbuf_appendstr(out, in);
+      /* "in" is no longer used but the memory remains allocated for
+       * at least as long as "out" will be used by the caller.
+       */
+      out->data = (char *)in;
+      out->len = len;
+      out->blocksize = len; /* sic! */
+
       return SVN_NO_ERROR;
     }
   else
     {
-      unsigned long zliblen;
+      unsigned long zlen = len;
 
       svn_stringbuf_ensure(out, len);
-
-      zliblen = len;
-      if (uncompress  ((unsigned char *)out->data, &zliblen,
-                       (const unsigned char *)in->data, in->len) != Z_OK)
+      if (uncompress((unsigned char *)out->data, &zlen, in, inLen) != Z_OK)
         return svn_error_create(SVN_ERR_SVNDIFF_INVALID_COMPRESSED_DATA,
                                 NULL,
                                 _("Decompression of svndiff data failed"));
 
       /* Zlib should not produce something that has a different size than the
          original length we stored. */
-      if (zliblen != len)
+      if (zlen != len)
         return svn_error_create(SVN_ERR_SVNDIFF_INVALID_COMPRESSED_DATA,
                                 NULL,
                                 _("Size of uncompressed data "
                                   "does not match stored original length"));
-      out->len = zliblen;
+      out->len = zlen;
     }
   return SVN_NO_ERROR;
 }
@@ -627,16 +634,15 @@ decode_window(svn_txdelta_window_t *wind
 
   if (version == 1)
     {
-      svn_stringbuf_t *instin, *ndin;
-      svn_stringbuf_t *instout, *ndout;
+      svn_stringbuf_t *instout = svn_stringbuf_create_empty(pool);
+      svn_stringbuf_t *ndout = svn_stringbuf_create_empty(pool);
 
-      instin = svn_stringbuf_ncreate((const char *)data, insend - data, pool);
-      instout = svn_stringbuf_create("", pool);
-      SVN_ERR(zlib_decode(instin, instout, MAX_INSTRUCTION_SECTION_LEN));
-
-      ndin = svn_stringbuf_ncreate((const char *)insend, newlen, pool);
-      ndout = svn_stringbuf_create("", pool);
-      SVN_ERR(zlib_decode(ndin, ndout, SVN_DELTA_WINDOW_SIZE));
+      /* these may in fact simply return references to insend */
+      
+      SVN_ERR(zlib_decode(insend, newlen, ndout,
+                          SVN_DELTA_WINDOW_SIZE));
+      SVN_ERR(zlib_decode(data, insend - data, instout,
+                          MAX_INSTRUCTION_SECTION_LEN));
 
       newlen = ndout->len;
       data = (unsigned char *)instout->data;
@@ -846,7 +852,7 @@ svn_txdelta_parse_svndiff(svn_txdelta_wi
   db->consumer_baton = handler_baton;
   db->pool = subpool;
   db->subpool = svn_pool_create(subpool);
-  db->buffer = svn_stringbuf_create("", db->subpool);
+  db->buffer = svn_stringbuf_create_empty(db->subpool);
   db->last_sview_offset = 0;
   db->last_sview_len = 0;
   db->header_bytes = 0;

Modified: subversion/trunk/subversion/libsvn_delta/text_delta.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_delta/text_delta.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_delta/text_delta.c (original)
+++ subversion/trunk/subversion/libsvn_delta/text_delta.c Fri Oct 28 22:09:51 2011
@@ -150,7 +150,7 @@ compute_window(const char *data, apr_siz
   svn_txdelta_window_t *window;
 
   /* Compute the delta operations. */
-  build_baton.new_data = svn_stringbuf_create("", pool);
+  build_baton.new_data = svn_stringbuf_create_empty(pool);
 
   if (source_len == 0)
     svn_txdelta__insert_op(&build_baton, svn_txdelta_new, 0, target_len, data,

Modified: subversion/trunk/subversion/libsvn_diff/diff_file.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_diff/diff_file.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_diff/diff_file.c (original)
+++ subversion/trunk/subversion/libsvn_diff/diff_file.c Fri Oct 28 22:09:51 2011
@@ -1755,9 +1755,9 @@ svn_diff_file_output_unified3(svn_stream
       baton.header_encoding = header_encoding;
       baton.path[0] = original_path;
       baton.path[1] = modified_path;
-      baton.hunk = svn_stringbuf_create("", pool);
+      baton.hunk = svn_stringbuf_create_empty(pool);
       baton.show_c_function = show_c_function;
-      baton.extra_context = svn_stringbuf_create("", pool);
+      baton.extra_context = svn_stringbuf_create_empty(pool);
       baton.extra_skip_match = apr_array_make(pool, 3, sizeof(char **));
 
       c = apr_array_push(baton.extra_skip_match);

Modified: subversion/trunk/subversion/libsvn_diff/diff_memory.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_diff/diff_memory.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_diff/diff_memory.c (original)
+++ subversion/trunk/subversion/libsvn_diff/diff_memory.c Fri Oct 28 22:09:51 2011
@@ -584,7 +584,7 @@ svn_diff_mem_string_output_unified2(svn_
       baton.output_stream = output_stream;
       baton.pool = svn_pool_create(pool);
       baton.header_encoding = header_encoding;
-      baton.hunk = svn_stringbuf_create("", pool);
+      baton.hunk = svn_stringbuf_create_empty(pool);
       baton.hunk_delimiter = hunk_delimiter;
 
       SVN_ERR(svn_utf_cstring_from_utf8_ex2

Modified: subversion/trunk/subversion/libsvn_diff/parse-diff.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_diff/parse-diff.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_diff/parse-diff.c (original)
+++ subversion/trunk/subversion/libsvn_diff/parse-diff.c Fri Oct 28 22:09:51 2011
@@ -396,7 +396,7 @@ hunk_readline_original_or_modified(apr_f
       *eof = TRUE;
       if (eol)
         *eol = NULL;
-      *stringbuf = svn_stringbuf_create("", result_pool);
+      *stringbuf = svn_stringbuf_create_empty(result_pool);
       return SVN_NO_ERROR;
     }
 
@@ -490,7 +490,7 @@ svn_diff_hunk_readline_diff_text(svn_dif
       *eof = TRUE;
       if (eol)
         *eol = NULL;
-      *stringbuf = svn_stringbuf_create("", result_pool);
+      *stringbuf = svn_stringbuf_create_empty(result_pool);
       return SVN_NO_ERROR;
     }
 

Modified: subversion/trunk/subversion/libsvn_fs_base/tree.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_fs_base/tree.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_fs_base/tree.c (original)
+++ subversion/trunk/subversion/libsvn_fs_base/tree.c Fri Oct 28 22:09:51 2011
@@ -2722,7 +2722,7 @@ svn_fs_base__commit_txn(const char **con
       merge_args.ancestor_node = NULL;
       merge_args.source_node = youngish_root_node;
       merge_args.txn = txn;
-      merge_args.conflict = svn_stringbuf_create("", pool); /* use pool */
+      merge_args.conflict = svn_stringbuf_create_empty(pool); /* use pool */
       err = svn_fs_base__retry_txn(fs, txn_body_merge, &merge_args,
                                    FALSE, subpool);
       if (err)
@@ -2832,7 +2832,7 @@ base_merge(const char **conflict_p,
   merge_args.source_node = source;
   merge_args.ancestor_node = ancestor;
   merge_args.txn = txn;
-  merge_args.conflict = svn_stringbuf_create("", pool);
+  merge_args.conflict = svn_stringbuf_create_empty(pool);
   err = svn_fs_base__retry_txn(fs, txn_body_merge, &merge_args, FALSE, pool);
   if (err)
     {
@@ -3762,7 +3762,7 @@ txn_body_apply_textdelta(void *baton, tr
 
   /* Make a writable "string" stream which writes data to
      tb->target_string. */
-  tb->target_string = svn_stringbuf_create("", tb->pool);
+  tb->target_string = svn_stringbuf_create_empty(tb->pool);
   tb->string_stream = svn_stream_create(tb, tb->pool);
   svn_stream_set_write(tb->string_stream, write_to_string);
 

Modified: subversion/trunk/subversion/libsvn_fs_fs/lock.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_fs_fs/lock.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_fs_fs/lock.c (original)
+++ subversion/trunk/subversion/libsvn_fs_fs/lock.c Fri Oct 28 22:09:51 2011
@@ -205,7 +205,7 @@ write_digest_file(apr_hash_t *children,
     }
   if (apr_hash_count(children))
     {
-      svn_stringbuf_t *children_list = svn_stringbuf_create("", pool);
+      svn_stringbuf_t *children_list = svn_stringbuf_create_empty(pool);
       for (hi = apr_hash_first(pool, children); hi; hi = apr_hash_next(hi))
         {
           svn_stringbuf_appendbytes(children_list,

Propchange: subversion/trunk/subversion/libsvn_fs_fs/temp_serializer.c
            ('svn:mergeinfo' removed)

Propchange: subversion/trunk/subversion/libsvn_fs_fs/temp_serializer.h
            ('svn:mergeinfo' removed)

Modified: subversion/trunk/subversion/libsvn_fs_fs/tree.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_fs_fs/tree.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_fs_fs/tree.c (original)
+++ subversion/trunk/subversion/libsvn_fs_fs/tree.c Fri Oct 28 22:09:51 2011
@@ -1648,7 +1648,7 @@ svn_fs_fs__commit_txn(const char **confl
    */
 
   svn_error_t *err = SVN_NO_ERROR;
-  svn_stringbuf_t *conflict = svn_stringbuf_create("", pool);
+  svn_stringbuf_t *conflict = svn_stringbuf_create_empty(pool);
   svn_fs_t *fs = txn->fs;
 
   /* Limit memory usage when the repository has a high commit rate and
@@ -1756,7 +1756,7 @@ fs_merge(const char **conflict_p,
   dag_node_t *source, *ancestor;
   svn_fs_txn_t *txn;
   svn_error_t *err;
-  svn_stringbuf_t *conflict = svn_stringbuf_create("", pool);
+  svn_stringbuf_t *conflict = svn_stringbuf_create_empty(pool);
 
   if (! target_root->is_txn_root)
     return SVN_FS__NOT_TXN(target_root);
@@ -2455,7 +2455,7 @@ apply_textdelta(void *baton, apr_pool_t 
 
   /* Make a writable "string" stream which writes data to
      tb->target_string. */
-  tb->target_string = svn_stringbuf_create("", tb->pool);
+  tb->target_string = svn_stringbuf_create_empty(tb->pool);
   tb->string_stream = svn_stream_create(tb, tb->pool);
   svn_stream_set_write(tb->string_stream, write_to_string);
 

Modified: subversion/trunk/subversion/libsvn_ra/ra_loader.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra/ra_loader.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra/ra_loader.c (original)
+++ subversion/trunk/subversion/libsvn_ra/ra_loader.c Fri Oct 28 22:09:51 2011
@@ -1285,7 +1285,7 @@ svn_ra_print_ra_libraries(svn_stringbuf_
                           void *ra_baton,
                           apr_pool_t *pool)
 {
-  *descriptions = svn_stringbuf_create("", pool);
+  *descriptions = svn_stringbuf_create_empty(pool);
   return svn_ra_print_modules(*descriptions, pool);
 }
 

Modified: subversion/trunk/subversion/libsvn_ra_neon/fetch.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra_neon/fetch.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra_neon/fetch.c (original)
+++ subversion/trunk/subversion/libsvn_ra_neon/fetch.c Fri Oct 28 22:09:51 2011
@@ -1487,7 +1487,7 @@ start_element(int *elem, void *userdata,
       if (DIR_DEPTH(rb) == 0)
         {
           /* pathbuf has to live for the whole edit! */
-          pathbuf = svn_stringbuf_create("", rb->pool);
+          pathbuf = svn_stringbuf_create_empty(rb->pool);
 
           /* During switch operations, we need to invalidate the
              tree's version resource URLs in case something goes
@@ -2544,7 +2544,7 @@ make_reporter(svn_ra_session_t *session,
   rb->edit_baton = edit_baton;
   rb->fetch_content = fetch_content;
   rb->in_resource = FALSE;
-  rb->current_wcprop_path = svn_stringbuf_create("", pool);
+  rb->current_wcprop_path = svn_stringbuf_create_empty(pool);
   rb->is_switch = dst_path != NULL;
   rb->target = target;
   rb->receiving_all = FALSE;
@@ -2553,7 +2553,7 @@ make_reporter(svn_ra_session_t *session,
   rb->whandler_baton = NULL;
   rb->svndiff_decoder = NULL;
   rb->base64_decoder = NULL;
-  rb->cdata_accum = svn_stringbuf_create("", pool);
+  rb->cdata_accum = svn_stringbuf_create_empty(pool);
   rb->send_copyfrom_args = send_copyfrom_args;
   rb->lock_tokens = apr_hash_make(pool);
 

Modified: subversion/trunk/subversion/libsvn_ra_neon/file_revs.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra_neon/file_revs.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra_neon/file_revs.c (original)
+++ subversion/trunk/subversion/libsvn_ra_neon/file_revs.c Fri Oct 28 22:09:51 2011
@@ -307,7 +307,7 @@ svn_ra_neon__get_file_revs(svn_ra_sessio
                            apr_pool_t *pool)
 {
   svn_ra_neon__session_t *ras = session->priv;
-  svn_stringbuf_t *request_body = svn_stringbuf_create("", pool);
+  svn_stringbuf_t *request_body = svn_stringbuf_create_empty(pool);
   const char *bc_url;
   const char *bc_relative;
   const char *final_bc_url;
@@ -349,7 +349,7 @@ svn_ra_neon__get_file_revs(svn_ra_sessio
   /* Initialize the baton. */
   rb.handler = handler;
   rb.handler_baton = handler_baton;
-  rb.cdata_accum = svn_stringbuf_create("", pool);
+  rb.cdata_accum = svn_stringbuf_create_empty(pool);
   rb.subpool = svn_pool_create(pool);
   reset_file_rev(&rb);
 

Modified: subversion/trunk/subversion/libsvn_ra_neon/get_dated_rev.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra_neon/get_dated_rev.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra_neon/get_dated_rev.c (original)
+++ subversion/trunk/subversion/libsvn_ra_neon/get_dated_rev.c Fri Oct 28 22:09:51 2011
@@ -93,7 +93,7 @@ drev_start_element(int *elem, void *bato
     return SVN_NO_ERROR;
 
   if (elm->id == ELEM_version_name)
-    b->cdata = svn_stringbuf_create("", b->pool);
+    b->cdata = svn_stringbuf_create_empty(b->pool);
 
   return SVN_NO_ERROR;
 }

Modified: subversion/trunk/subversion/libsvn_ra_neon/get_deleted_rev.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra_neon/get_deleted_rev.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra_neon/get_deleted_rev.c (original)
+++ subversion/trunk/subversion/libsvn_ra_neon/get_deleted_rev.c Fri Oct 28 22:09:51 2011
@@ -89,7 +89,7 @@ drev_start_element(int *elem, void *bato
     return SVN_NO_ERROR;
 
   if (elm->id == ELEM_version_name)
-    b->cdata = svn_stringbuf_create("", b->pool);
+    b->cdata = svn_stringbuf_create_empty(b->pool);
 
   return SVN_NO_ERROR;
 }

Modified: subversion/trunk/subversion/libsvn_ra_neon/get_location_segments.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra_neon/get_location_segments.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra_neon/get_location_segments.c (original)
+++ subversion/trunk/subversion/libsvn_ra_neon/get_location_segments.c Fri Oct 28 22:09:51 2011
@@ -150,7 +150,7 @@ svn_ra_neon__get_location_segments(svn_r
   apr_pool_t *subpool = svn_pool_create(pool);
 
   /* Build the request body. */
-  request_body = svn_stringbuf_create("", subpool);
+  request_body = svn_stringbuf_create_empty(subpool);
   svn_stringbuf_appendcstr(request_body,
                            "<?xml version=\"1.0\" encoding=\"utf-8\"?>"
                            DEBUG_CR "<S:get-location-segments xmlns:S=\""

Modified: subversion/trunk/subversion/libsvn_ra_neon/get_locations.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra_neon/get_locations.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra_neon/get_locations.c (original)
+++ subversion/trunk/subversion/libsvn_ra_neon/get_locations.c Fri Oct 28 22:09:51 2011
@@ -138,7 +138,7 @@ svn_ra_neon__get_locations(svn_ra_sessio
 
   *locations = apr_hash_make(pool);
 
-  request_body = svn_stringbuf_create("", pool);
+  request_body = svn_stringbuf_create_empty(pool);
   svn_stringbuf_appendcstr(request_body,
                            "<?xml version=\"1.0\" encoding=\"utf-8\"?>" DEBUG_CR
                            "<S:get-locations xmlns:S=\"" SVN_XML_NAMESPACE

Modified: subversion/trunk/subversion/libsvn_ra_neon/get_locks.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra_neon/get_locks.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra_neon/get_locks.c (original)
+++ subversion/trunk/subversion/libsvn_ra_neon/get_locks.c Fri Oct 28 22:09:51 2011
@@ -387,7 +387,7 @@ svn_ra_neon__get_locks(svn_ra_session_t 
   baton.scratchpool = svn_pool_create(pool);
   baton.current_lock = NULL;
   baton.encoding = NULL;
-  baton.cdata_accum = svn_stringbuf_create("", pool);
+  baton.cdata_accum = svn_stringbuf_create_empty(pool);
 
   body = apr_psprintf(pool,
                       "<?xml version=\"1.0\" encoding=\"utf-8\"?>"

Modified: subversion/trunk/subversion/libsvn_ra_neon/lock.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra_neon/lock.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra_neon/lock.c (original)
+++ subversion/trunk/subversion/libsvn_ra_neon/lock.c Fri Oct 28 22:09:51 2011
@@ -105,13 +105,13 @@ lock_start_element(int *elem, void *bato
     case ELEM_lock_timeout:
     case ELEM_lock_depth:
     case ELEM_status:
-      b->cdata = svn_stringbuf_create("", b->pool);
+      b->cdata = svn_stringbuf_create_empty(b->pool);
       break;
 
     case ELEM_href:
       if (parent == ELEM_lock_token
           || parent == ELEM_response)
-        b->cdata = svn_stringbuf_create("", b->pool);
+        b->cdata = svn_stringbuf_create_empty(b->pool);
       break;
 
     default:

Modified: subversion/trunk/subversion/libsvn_ra_neon/log.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra_neon/log.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra_neon/log.c (original)
+++ subversion/trunk/subversion/libsvn_ra_neon/log.c Fri Oct 28 22:09:51 2011
@@ -365,7 +365,7 @@ svn_error_t * svn_ra_neon__get_log(svn_r
 
   int i;
   svn_ra_neon__session_t *ras = session->priv;
-  svn_stringbuf_t *request_body = svn_stringbuf_create("", pool);
+  svn_stringbuf_t *request_body = svn_stringbuf_create_empty(pool);
   svn_boolean_t want_custom_revprops;
   struct log_baton lb;
   const char *bc_url;
@@ -491,7 +491,7 @@ svn_error_t * svn_ra_neon__get_log(svn_r
   lb.count = 0;
   lb.nest_level = 0;
   lb.limit_compat_bailout = FALSE;
-  lb.cdata = svn_stringbuf_create("", pool);
+  lb.cdata = svn_stringbuf_create_empty(pool);
   lb.log_entry = svn_log_entry_create(pool);
   lb.want_cdata = NULL;
   reset_log_item(&lb);

Modified: subversion/trunk/subversion/libsvn_ra_neon/merge.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra_neon/merge.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra_neon/merge.c (original)
+++ subversion/trunk/subversion/libsvn_ra_neon/merge.c Fri Oct 28 22:09:51 2011
@@ -702,9 +702,9 @@ svn_error_t * svn_ra_neon__merge_activit
   merge_ctx_t mc = { 0 };
   const char *body;
   apr_hash_t *extra_headers = NULL;
-  svn_stringbuf_t *lockbuf = svn_stringbuf_create("", pool);
+  svn_stringbuf_t *lockbuf = svn_stringbuf_create_empty(pool);
 
-  mc.cdata = svn_stringbuf_create("", pool);
+  mc.cdata = svn_stringbuf_create_empty(pool);
   mc.pool = pool;
   mc.scratchpool = svn_pool_create(pool);
   mc.base_href = repos_url;

Modified: subversion/trunk/subversion/libsvn_ra_neon/mergeinfo.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra_neon/mergeinfo.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra_neon/mergeinfo.c (original)
+++ subversion/trunk/subversion/libsvn_ra_neon/mergeinfo.c Fri Oct 28 22:09:51 2011
@@ -167,7 +167,7 @@ svn_ra_neon__get_mergeinfo(svn_ra_sessio
                            apr_pool_t *pool)
 {
   svn_ra_neon__session_t *ras = session->priv;
-  svn_stringbuf_t *request_body = svn_stringbuf_create("", pool);
+  svn_stringbuf_t *request_body = svn_stringbuf_create_empty(pool);
   struct mergeinfo_baton mb;
   const char *bc_url;
   const char *bc_relative;
@@ -221,8 +221,8 @@ svn_ra_neon__get_mergeinfo(svn_ra_sessio
   svn_stringbuf_appendcstr(request_body, minfo_report_tail);
 
   mb.pool = pool;
-  mb.curr_path = svn_stringbuf_create("", pool);
-  mb.curr_info = svn_stringbuf_create("", pool);
+  mb.curr_path = svn_stringbuf_create_empty(pool);
+  mb.curr_info = svn_stringbuf_create_empty(pool);
   mb.catalog = apr_hash_make(pool);
   mb.err = SVN_NO_ERROR;
 

Modified: subversion/trunk/subversion/libsvn_ra_neon/options.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra_neon/options.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra_neon/options.c (original)
+++ subversion/trunk/subversion/libsvn_ra_neon/options.c Fri Oct 28 22:09:51 2011
@@ -288,7 +288,7 @@ svn_ra_neon__exchange_capabilities(svn_r
   int status_code;
 
   oc.pool = pool;
-  oc.cdata = svn_stringbuf_create("", pool);
+  oc.cdata = svn_stringbuf_create_empty(pool);
 
   if (youngest_rev)
     *youngest_rev = SVN_INVALID_REVNUM;

Modified: subversion/trunk/subversion/libsvn_ra_neon/props.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra_neon/props.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra_neon/props.c (original)
+++ subversion/trunk/subversion/libsvn_ra_neon/props.c Fri Oct 28 22:09:51 2011
@@ -547,7 +547,7 @@ svn_error_t * svn_ra_neon__get_props(apr
   pc.pool = pool;
   pc.propbuffer = apr_hash_make(pool);
   pc.props = apr_hash_make(pool);
-  pc.cdata = svn_stringbuf_create("", pool);
+  pc.cdata = svn_stringbuf_create_empty(pool);
 
   /* Create and dispatch the request! */
   SVN_ERR(svn_ra_neon__parsed_request(sess, "PROPFIND", url,

Modified: subversion/trunk/subversion/libsvn_ra_neon/replay.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra_neon/replay.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra_neon/replay.c (original)
+++ subversion/trunk/subversion/libsvn_ra_neon/replay.c Fri Oct 28 22:09:51 2011
@@ -345,7 +345,7 @@ start_element(int *elem, void *baton, in
             if (svn_xml_get_attr_value("del", atts))
               rb->prop_accum = NULL;
             else
-              rb->prop_accum = svn_stringbuf_create("", rb->prop_pool);
+              rb->prop_accum = svn_stringbuf_create_empty(rb->prop_pool);
 
             rb->prop_name = apr_pstrdup(rb->prop_pool, name);
           }
@@ -479,7 +479,7 @@ svn_ra_neon__replay(svn_ra_session_t *se
   rb.pool = pool;
   rb.dirs = apr_array_make(pool, 5, sizeof(dir_item_t));
   rb.prop_pool = svn_pool_create(pool);
-  rb.prop_accum = svn_stringbuf_create("", rb.prop_pool);
+  rb.prop_accum = svn_stringbuf_create_empty(rb.prop_pool);
 
   return svn_ra_neon__parsed_request(ras, "REPORT", ras->url->data, body,
                                      NULL, NULL,

Modified: subversion/trunk/subversion/libsvn_ra_neon/util.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra_neon/util.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra_neon/util.c (original)
+++ subversion/trunk/subversion/libsvn_ra_neon/util.c Fri Oct 28 22:09:51 2011
@@ -313,12 +313,12 @@ multistatus_parser_create(svn_ra_neon__r
                                  start_207_element,
                                  svn_ra_neon__xml_collect_cdata,
                                  end_207_element, b);
-  b->cdata = svn_stringbuf_create("", req->pool);
-  b->description = svn_stringbuf_create("", req->pool);
+  b->cdata = svn_stringbuf_create_empty(req->pool);
+  b->description = svn_stringbuf_create_empty(req->pool);
   b->req = req;
 
-  b->propname = svn_stringbuf_create("", req->pool);
-  b->propstat_description = svn_stringbuf_create("", req->pool);
+  b->propname = svn_stringbuf_create_empty(req->pool);
+  b->propstat_description = svn_stringbuf_create_empty(req->pool);
 }
 
 
@@ -895,7 +895,7 @@ error_parser_create(svn_ra_neon__request
   b->tmp_err = NULL;
 
   b->want_cdata = NULL;
-  b->cdata = svn_stringbuf_create("", req->pool);
+  b->cdata = svn_stringbuf_create_empty(req->pool);
 
   /* attach a standard <D:error> body parser to the request */
   error_parser = xml_parser_create(req);

Modified: subversion/trunk/subversion/libsvn_ra_serf/blame.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra_serf/blame.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra_serf/blame.c (original)
+++ subversion/trunk/subversion/libsvn_ra_serf/blame.c Fri Oct 28 22:09:51 2011
@@ -151,7 +151,7 @@ create_propval(blame_info_t *info)
 
   if (!info->prop_attr)
     {
-      return svn_string_create("", info->pool);
+      return svn_string_create_empty(info->pool);
     }
   else
     {

Modified: subversion/trunk/subversion/libsvn_ra_serf/commit.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra_serf/commit.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra_serf/commit.c (original)
+++ subversion/trunk/subversion/libsvn_ra_serf/commit.c Fri Oct 28 22:09:51 2011
@@ -1799,7 +1799,7 @@ change_dir_prop(void *dir_baton,
     }
   else
     {
-      value = svn_string_create("", dir->pool);
+      value = svn_string_create_empty(dir->pool);
       svn_ra_serf__set_prop(dir->removed_props, proppatch_target,
                             ns, name, value, dir->pool);
     }
@@ -2047,7 +2047,7 @@ change_file_prop(void *file_baton,
     }
   else
     {
-      value = svn_string_create("", file->pool);
+      value = svn_string_create_empty(file->pool);
 
       svn_ra_serf__set_prop(file->removed_props, file->url,
                             ns, name, value, file->pool);
@@ -2462,7 +2462,7 @@ svn_ra_serf__change_rev_prop(svn_ra_sess
     }
   else if (old_value_p)
     {
-      svn_string_t *dummy_value = svn_string_create("", proppatch_ctx->pool);
+      svn_string_t *dummy_value = svn_string_create_empty(proppatch_ctx->pool);
 
       svn_ra_serf__set_prop(proppatch_ctx->previous_removed_props,
                             proppatch_ctx->path,
@@ -2476,7 +2476,7 @@ svn_ra_serf__change_rev_prop(svn_ra_sess
     }
   else
     {
-      value = svn_string_create("", proppatch_ctx->pool);
+      value = svn_string_create_empty(proppatch_ctx->pool);
 
       svn_ra_serf__set_prop(proppatch_ctx->removed_props, proppatch_ctx->path,
                             ns, name, value, proppatch_ctx->pool);

Modified: subversion/trunk/subversion/libsvn_ra_serf/mergeinfo.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra_serf/mergeinfo.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra_serf/mergeinfo.c (original)
+++ subversion/trunk/subversion/libsvn_ra_serf/mergeinfo.c Fri Oct 28 22:09:51 2011
@@ -256,8 +256,8 @@ svn_ra_serf__get_mergeinfo(svn_ra_sessio
 
   mergeinfo_ctx = apr_pcalloc(pool, sizeof(*mergeinfo_ctx));
   mergeinfo_ctx->pool = pool;
-  mergeinfo_ctx->curr_path = svn_stringbuf_create("", pool);
-  mergeinfo_ctx->curr_info = svn_stringbuf_create("", pool);
+  mergeinfo_ctx->curr_path = svn_stringbuf_create_empty(pool);
+  mergeinfo_ctx->curr_info = svn_stringbuf_create_empty(pool);
   mergeinfo_ctx->done = FALSE;
   mergeinfo_ctx->result_catalog = apr_hash_make(pool);
   mergeinfo_ctx->paths = paths;

Modified: subversion/trunk/subversion/libsvn_ra_serf/util.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra_serf/util.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra_serf/util.c (original)
+++ subversion/trunk/subversion/libsvn_ra_serf/util.c Fri Oct 28 22:09:51 2011
@@ -914,7 +914,7 @@ svn_ra_serf__handle_discard_body(serf_re
               server_err->error = svn_error_create(APR_SUCCESS, NULL, NULL);
               server_err->has_xml_response = TRUE;
               server_err->contains_precondition_error = FALSE;
-              server_err->cdata = svn_stringbuf_create("", pool);
+              server_err->cdata = svn_stringbuf_create_empty(pool);
               server_err->collect_cdata = FALSE;
               server_err->parser.pool = server_err->error->pool;
               server_err->parser.user_data = server_err;
@@ -1182,7 +1182,7 @@ svn_ra_serf__handle_multistatus_only(ser
           server_err->error = svn_error_create(APR_SUCCESS, NULL, NULL);
           server_err->has_xml_response = TRUE;
           server_err->contains_precondition_error = FALSE;
-          server_err->cdata = svn_stringbuf_create("", server_err->error->pool);
+          server_err->cdata = svn_stringbuf_create_empty(server_err->error->pool);
           server_err->collect_cdata = FALSE;
           server_err->parser.pool = server_err->error->pool;
           server_err->parser.user_data = server_err;

Propchange: subversion/trunk/subversion/libsvn_subr/adler32.c
            ('svn:mergeinfo' removed)

Modified: subversion/trunk/subversion/libsvn_subr/cmdline.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_subr/cmdline.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_subr/cmdline.c (original)
+++ subversion/trunk/subversion/libsvn_subr/cmdline.c Fri Oct 28 22:09:51 2011
@@ -637,7 +637,7 @@ svn_cmdline__print_xml_prop(svn_stringbu
   const char *encoding = NULL;
 
   if (*outstr == NULL)
-    *outstr = svn_stringbuf_create("", pool);
+    *outstr = svn_stringbuf_create_empty(pool);
 
   if (svn_xml_is_xml_safe(propval->data, propval->len))
     {

Modified: subversion/trunk/subversion/libsvn_subr/config.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_subr/config.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_subr/config.c (original)
+++ subversion/trunk/subversion/libsvn_subr/config.c Fri Oct 28 22:09:51 2011
@@ -88,8 +88,8 @@ svn_config_create(svn_config_t **cfgp,
   cfg->pool = result_pool;
   cfg->x_pool = svn_pool_create(result_pool);
   cfg->x_values = FALSE;
-  cfg->tmp_key = svn_stringbuf_create("", result_pool);
-  cfg->tmp_value = svn_stringbuf_create("", result_pool);
+  cfg->tmp_key = svn_stringbuf_create_empty(result_pool);
+  cfg->tmp_value = svn_stringbuf_create_empty(result_pool);
   cfg->section_names_case_sensitive = section_names_case_sensitive;
 
   *cfgp = cfg;

Modified: subversion/trunk/subversion/libsvn_subr/config_file.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_subr/config_file.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_subr/config_file.c (original)
+++ subversion/trunk/subversion/libsvn_subr/config_file.c Fri Oct 28 22:09:51 2011
@@ -386,9 +386,9 @@ svn_config__parse_file(svn_config_t *cfg
                                            pool);
   ctx.line = 1;
   ctx.have_ungotten_char = FALSE;
-  ctx.section = svn_stringbuf_create("", pool);
-  ctx.option = svn_stringbuf_create("", pool);
-  ctx.value = svn_stringbuf_create("", pool);
+  ctx.section = svn_stringbuf_create_empty(pool);
+  ctx.option = svn_stringbuf_create_empty(pool);
+  ctx.value = svn_stringbuf_create_empty(pool);
 
   do
     {

Modified: subversion/trunk/subversion/libsvn_subr/config_win.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_subr/config_win.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_subr/config_win.c (original)
+++ subversion/trunk/subversion/libsvn_subr/config_win.c Fri Oct 28 22:09:51 2011
@@ -200,9 +200,9 @@ svn_config__parse_registry(svn_config_t 
 
 
   subpool = svn_pool_create(pool);
-  section = svn_stringbuf_create("", subpool);
-  option = svn_stringbuf_create("", subpool);
-  value = svn_stringbuf_create("", subpool);
+  section = svn_stringbuf_create_empty(subpool);
+  option = svn_stringbuf_create_empty(subpool);
+  value = svn_stringbuf_create_empty(subpool);
 
   /* The top-level values belong to the [DEFAULT] section */
   svn_err = parse_section(cfg, hkey, SVN_CONFIG__DEFAULT_SECTION,

Propchange: subversion/trunk/subversion/libsvn_subr/hash.c
            ('svn:mergeinfo' removed)

Modified: subversion/trunk/subversion/libsvn_subr/log.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_subr/log.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_subr/log.c (original)
+++ subversion/trunk/subversion/libsvn_subr/log.c Fri Oct 28 22:09:51 2011
@@ -121,7 +121,7 @@ svn_log__get_mergeinfo(const apr_array_h
 {
   int i;
   apr_pool_t *iterpool = svn_pool_create(pool);
-  svn_stringbuf_t *space_separated_paths = svn_stringbuf_create("", pool);
+  svn_stringbuf_t *space_separated_paths = svn_stringbuf_create_empty(pool);
 
   for (i = 0; i < paths->nelts; i++)
     {
@@ -210,8 +210,8 @@ svn_log__log(const apr_array_header_t *p
 {
   int i;
   apr_pool_t *iterpool = svn_pool_create(pool);
-  svn_stringbuf_t *space_separated_paths = svn_stringbuf_create("", pool);
-  svn_stringbuf_t *options = svn_stringbuf_create("", pool);
+  svn_stringbuf_t *space_separated_paths = svn_stringbuf_create_empty(pool);
+  svn_stringbuf_t *options = svn_stringbuf_create_empty(pool);
 
   for (i = 0; i < paths->nelts; i++)
     {
@@ -264,7 +264,7 @@ svn_log__get_locations(const char *path,
 {
   const svn_revnum_t *revision_ptr, *revision_ptr_start, *revision_ptr_end;
   apr_pool_t *iterpool = svn_pool_create(pool);
-  svn_stringbuf_t *space_separated_revnums = svn_stringbuf_create("", pool);
+  svn_stringbuf_t *space_separated_revnums = svn_stringbuf_create_empty(pool);
 
   revision_ptr_start = (const svn_revnum_t *)location_revisions->elts;
   revision_ptr = revision_ptr_start;
@@ -311,7 +311,7 @@ svn_log__lock(const apr_array_header_t *
 {
   int i;
   apr_pool_t *iterpool = svn_pool_create(pool);
-  svn_stringbuf_t *space_separated_paths = svn_stringbuf_create("", pool);
+  svn_stringbuf_t *space_separated_paths = svn_stringbuf_create_empty(pool);
 
   for (i = 0; i < paths->nelts; i++)
     {
@@ -334,7 +334,7 @@ svn_log__unlock(const apr_array_header_t
 {
   int i;
   apr_pool_t *iterpool = svn_pool_create(pool);
-  svn_stringbuf_t *space_separated_paths = svn_stringbuf_create("", pool);
+  svn_stringbuf_t *space_separated_paths = svn_stringbuf_create_empty(pool);
 
   for (i = 0; i < paths->nelts; i++)
     {

Modified: subversion/trunk/subversion/libsvn_subr/mergeinfo.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_subr/mergeinfo.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_subr/mergeinfo.c (original)
+++ subversion/trunk/subversion/libsvn_subr/mergeinfo.c Fri Oct 28 22:09:51 2011
@@ -1853,7 +1853,7 @@ svn_rangelist_to_string(svn_string_t **o
                         const apr_array_header_t *rangelist,
                         apr_pool_t *pool)
 {
-  svn_stringbuf_t *buf = svn_stringbuf_create("", pool);
+  svn_stringbuf_t *buf = svn_stringbuf_create_empty(pool);
 
   if (rangelist->nelts > 0)
     {
@@ -1890,7 +1890,7 @@ mergeinfo_to_stringbuf(svn_stringbuf_t *
                        const char *prefix,
                        apr_pool_t *pool)
 {
-  *output = svn_stringbuf_create("", pool);
+  *output = svn_stringbuf_create_empty(pool);
 
   if (apr_hash_count(input) > 0)
     {
@@ -2283,7 +2283,7 @@ svn_mergeinfo__catalog_to_formatted_stri
       apr_array_header_t *sorted_catalog =
         svn_sort__hash(catalog, svn_sort_compare_items_as_paths, pool);
 
-      output_buf = svn_stringbuf_create("", pool);
+      output_buf = svn_stringbuf_create_empty(pool);
       for (i = 0; i < sorted_catalog->nelts; i++)
         {
           svn_sort__item_t elt =
@@ -2356,7 +2356,7 @@ svn_mergeinfo__to_formatted_string(svn_s
 #endif
 
   *output = output_buf ? svn_stringbuf__morph_into_string(output_buf)
-                       : svn_string_create("", pool);
+                       : svn_string_create_empty(pool);
   return SVN_NO_ERROR;
 }
 

Modified: subversion/trunk/subversion/libsvn_subr/opt.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_subr/opt.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_subr/opt.c (original)
+++ subversion/trunk/subversion/libsvn_subr/opt.c Fri Oct 28 22:09:51 2011
@@ -944,7 +944,7 @@ svn_opt_parse_revprop(apr_hash_t **revpr
   else
     {
       SVN_ERR(svn_utf_cstring_to_utf8(&propname, revprop_spec, pool));
-      propval = svn_string_create("", pool);
+      propval = svn_string_create_empty(pool);
     }
 
   if (!svn_prop_name_is_valid(propname))

Modified: subversion/trunk/subversion/libsvn_subr/prompt.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_subr/prompt.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_subr/prompt.c (original)
+++ subversion/trunk/subversion/libsvn_subr/prompt.c Fri Oct 28 22:09:51 2011
@@ -95,7 +95,7 @@ prompt(const char **result,
   apr_file_t *fp;
   char c;
 
-  svn_stringbuf_t *strbuf = svn_stringbuf_create("", pool);
+  svn_stringbuf_t *strbuf = svn_stringbuf_create_empty(pool);
 
   status = apr_file_open_stdin(&fp, pool);
   if (status)

Modified: subversion/trunk/subversion/libsvn_subr/quoprint.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_subr/quoprint.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_subr/quoprint.c (original)
+++ subversion/trunk/subversion/libsvn_subr/quoprint.c Fri Oct 28 22:09:51 2011
@@ -120,7 +120,7 @@ encode_data(void *baton, const char *dat
 {
   struct encode_baton *eb = baton;
   apr_pool_t *subpool = svn_pool_create(eb->pool);
-  svn_stringbuf_t *encoded = svn_stringbuf_create("", subpool);
+  svn_stringbuf_t *encoded = svn_stringbuf_create_empty(subpool);
   apr_size_t enclen;
   svn_error_t *err = SVN_NO_ERROR;
 
@@ -177,7 +177,7 @@ svn_quoprint_encode(svn_stream_t *output
 svn_stringbuf_t *
 svn_quoprint_encode_string(const svn_stringbuf_t *str, apr_pool_t *pool)
 {
-  svn_stringbuf_t *encoded = svn_stringbuf_create("", pool);
+  svn_stringbuf_t *encoded = svn_stringbuf_create_empty(pool);
   int linelen = 0;
 
   encode_bytes(encoded, str->data, str->len, &linelen);
@@ -254,7 +254,7 @@ decode_data(void *baton, const char *dat
 
   /* Decode this block of data.  */
   subpool = svn_pool_create(db->pool);
-  decoded = svn_stringbuf_create("", subpool);
+  decoded = svn_stringbuf_create_empty(subpool);
   decode_bytes(decoded, data, *len, db->buf, &db->buflen);
 
   /* Write the output, clean up, go home.  */
@@ -300,7 +300,7 @@ svn_quoprint_decode(svn_stream_t *output
 svn_stringbuf_t *
 svn_quoprint_decode_string(const svn_stringbuf_t *str, apr_pool_t *pool)
 {
-  svn_stringbuf_t *decoded = svn_stringbuf_create("", pool);
+  svn_stringbuf_t *decoded = svn_stringbuf_create_empty(pool);
   char ingroup[4];
   int ingrouplen = 0;
 

Modified: subversion/trunk/subversion/libsvn_subr/subst.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_subr/subst.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_subr/subst.c (original)
+++ subversion/trunk/subversion/libsvn_subr/subst.c Fri Oct 28 22:09:51 2011
@@ -1467,7 +1467,7 @@ stream_translated(svn_stream_t *stream,
     = create_translation_baton(eol_str, translated_eol, repair, keywords,
                                expand, result_pool);
   baton->written = FALSE;
-  baton->readbuf = svn_stringbuf_create("", result_pool);
+  baton->readbuf = svn_stringbuf_create_empty(result_pool);
   baton->readbuf_off = 0;
   baton->iterpool = svn_pool_create(result_pool);
   baton->buf = apr_palloc(result_pool, SVN__TRANSLATION_BUF_SIZE);
@@ -1522,7 +1522,7 @@ translate_cstring(const char **dst,
     }
 
   /* Create a stringbuf and wrapper stream to hold the output. */
-  dst_stringbuf = svn_stringbuf_create("", pool);
+  dst_stringbuf = svn_stringbuf_create_empty(pool);
   dst_stream = svn_stream_from_stringbuf(dst_stringbuf, pool);
 
   if (translated_eol)
@@ -1813,7 +1813,7 @@ svn_subst_create_specialfile(svn_stream_
   /* SCRATCH_POOL may not exist after the function returns. */
   baton->pool = result_pool;
 
-  baton->write_content = svn_stringbuf_create("", result_pool);
+  baton->write_content = svn_stringbuf_create_empty(result_pool);
   baton->write_stream = svn_stream_from_stringbuf(baton->write_content,
                                                   result_pool);
 
@@ -1852,7 +1852,7 @@ svn_subst_stream_from_specialfile(svn_st
       baton->read_stream = NULL;
     }
 
-  baton->write_content = svn_stringbuf_create("", pool);
+  baton->write_content = svn_stringbuf_create_empty(pool);
   baton->write_stream = svn_stream_from_stringbuf(baton->write_content, pool);
 
   *stream = svn_stream_create(baton, pool);

Modified: subversion/trunk/subversion/libsvn_subr/svn_base64.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_subr/svn_base64.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_subr/svn_base64.c (original)
+++ subversion/trunk/subversion/libsvn_subr/svn_base64.c Fri Oct 28 22:09:51 2011
@@ -208,7 +208,7 @@ static svn_error_t *
 encode_data(void *baton, const char *data, apr_size_t *len)
 {
   struct encode_baton *eb = baton;
-  svn_stringbuf_t *encoded = svn_stringbuf_create("", eb->scratch_pool);
+  svn_stringbuf_t *encoded = svn_stringbuf_create_empty(eb->scratch_pool);
   apr_size_t enclen;
   svn_error_t *err = SVN_NO_ERROR;
 
@@ -227,7 +227,7 @@ static svn_error_t *
 finish_encoding_data(void *baton)
 {
   struct encode_baton *eb = baton;
-  svn_stringbuf_t *encoded = svn_stringbuf_create("", eb->scratch_pool);
+  svn_stringbuf_t *encoded = svn_stringbuf_create_empty(eb->scratch_pool);
   apr_size_t enclen;
   svn_error_t *err = SVN_NO_ERROR;
 
@@ -267,7 +267,7 @@ svn_base64_encode_string2(const svn_stri
                           svn_boolean_t break_lines,
                           apr_pool_t *pool)
 {
-  svn_stringbuf_t *encoded = svn_stringbuf_create("", pool);
+  svn_stringbuf_t *encoded = svn_stringbuf_create_empty(pool);
   unsigned char ingroup[3];
   size_t ingrouplen = 0;
   size_t linelen = 0;
@@ -461,7 +461,7 @@ decode_data(void *baton, const char *dat
   svn_error_t *err = SVN_NO_ERROR;
 
   /* Decode this block of data.  */
-  decoded = svn_stringbuf_create("", db->scratch_pool);
+  decoded = svn_stringbuf_create_empty(db->scratch_pool);
   decode_bytes(decoded, data, *len, db->buf, &db->buflen, &db->done);
 
   /* Write the output, clean up, go home.  */
@@ -507,7 +507,7 @@ svn_base64_decode(svn_stream_t *output, 
 const svn_string_t *
 svn_base64_decode_string(const svn_string_t *str, apr_pool_t *pool)
 {
-  svn_stringbuf_t *decoded = svn_stringbuf_create("", pool);
+  svn_stringbuf_t *decoded = svn_stringbuf_create_empty(pool);
   unsigned char ingroup[4];
   int ingrouplen = 0;
   svn_boolean_t done = FALSE;
@@ -531,7 +531,7 @@ base64_from_checksum(const svn_checksum_
   unsigned char ingroup[3];
   size_t ingrouplen = 0;
   size_t linelen = 0;
-  checksum_str = svn_stringbuf_create("", pool);
+  checksum_str = svn_stringbuf_create_empty(pool);
 
   encode_bytes(checksum_str, checksum->digest,
                svn_checksum_size(checksum), ingroup, &ingrouplen,

Modified: subversion/trunk/subversion/libsvn_subr/svn_string.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_subr/svn_string.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_subr/svn_string.c (original)
+++ subversion/trunk/subversion/libsvn_subr/svn_string.c Fri Oct 28 22:09:51 2011
@@ -28,7 +28,6 @@
 #include <apr.h>
 
 #include <string.h>      /* for memcpy(), memcmp(), strlen() */
-#include <apr_lib.h>     /* for apr_isspace() */
 #include <apr_fnmatch.h>
 #include "svn_string.h"  /* loads "svn_types.h" and <apr_pools.h> */
 #include "svn_ctype.h"
@@ -133,6 +132,19 @@ create_string(const char *data, apr_size
   return new_string;
 }
 
+static char empty_buffer[1] = {0};
+  
+svn_string_t *
+svn_string_create_empty(apr_pool_t *pool)
+{
+  svn_string_t *new_string = apr_palloc(pool, sizeof(*new_string));
+  new_string->data = empty_buffer;
+  new_string->len = 0;
+
+  return new_string;
+}
+
+
 svn_string_t *
 svn_string_ncreate(const char *bytes, apr_size_t size, apr_pool_t *pool)
 {
@@ -286,6 +298,17 @@ create_stringbuf(char *data, apr_size_t 
 }
 
 svn_stringbuf_t *
+svn_stringbuf_create_empty(apr_pool_t *pool)
+{
+  /* All instances share the same zero-length buffer.
+   * Some algorithms, however, assume that they may write
+   * the terminating zero. So, empty_buffer must be writable 
+   * (a simple (char *)"" will cause SEGFAULTs). */
+
+  return create_stringbuf(empty_buffer, 0, 0, pool);
+}
+
+svn_stringbuf_t *
 svn_stringbuf_create_ensure(apr_size_t blocksize, apr_pool_t *pool)
 {
   void *mem;
@@ -724,7 +747,7 @@ svn_cstring_join(const apr_array_header_
                  const char *separator,
                  apr_pool_t *pool)
 {
-  svn_stringbuf_t *new_str = svn_stringbuf_create("", pool);
+  svn_stringbuf_t *new_str = svn_stringbuf_create_empty(pool);
   size_t sep_len = strlen(separator);
   int i;
 

Propchange: subversion/trunk/subversion/libsvn_subr/svn_temp_serializer.c
            ('svn:mergeinfo' removed)

Modified: subversion/trunk/subversion/libsvn_subr/win32_xlate.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_subr/win32_xlate.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_subr/win32_xlate.c (original)
+++ subversion/trunk/subversion/libsvn_subr/win32_xlate.c Fri Oct 28 22:09:51 2011
@@ -185,7 +185,7 @@ svn_subr__win32_xlate_to_stringbuf(win32
 
   if (src_length == 0)
   {
-    *dest = svn_stringbuf_create("", pool);
+    *dest = svn_stringbuf_create_empty(pool);
     return APR_SUCCESS;
   }
 

Modified: subversion/trunk/subversion/libsvn_subr/xml.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_subr/xml.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_subr/xml.c (original)
+++ subversion/trunk/subversion/libsvn_subr/xml.c Fri Oct 28 22:09:51 2011
@@ -115,7 +115,7 @@ xml_escape_cdata(svn_stringbuf_t **outst
   const char *p = data, *q;
 
   if (*outstr == NULL)
-    *outstr = svn_stringbuf_create("", pool);
+    *outstr = svn_stringbuf_create_empty(pool);
 
   while (1)
     {
@@ -277,7 +277,7 @@ svn_xml_fuzzy_escape(const char *string,
   if (q == end)
     return string;
 
-  outstr = svn_stringbuf_create("", pool);
+  outstr = svn_stringbuf_create_empty(pool);
   while (1)
     {
       q = p;
@@ -479,7 +479,7 @@ svn_xml_make_header2(svn_stringbuf_t **s
 {
 
   if (*str == NULL)
-    *str = svn_stringbuf_create("", pool);
+    *str = svn_stringbuf_create_empty(pool);
   svn_stringbuf_appendcstr(*str, "<?xml version=\"1.0\"");
   if (encoding)
     {
@@ -646,7 +646,7 @@ void svn_xml_make_close_tag(svn_stringbu
                             const char *tagname)
 {
   if (*str == NULL)
-    *str = svn_stringbuf_create("", pool);
+    *str = svn_stringbuf_create_empty(pool);
 
   svn_stringbuf_appendcstr(*str, "</");
   svn_stringbuf_appendcstr(*str, tagname);

Modified: subversion/trunk/subversion/libsvn_wc/props.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_wc/props.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_wc/props.c (original)
+++ subversion/trunk/subversion/libsvn_wc/props.c Fri Oct 28 22:09:51 2011
@@ -595,9 +595,9 @@ prop_conflict_from_skel(const svn_string
                                   incoming_base, scratch_pool);
 
   if (mine == NULL)
-    mine = svn_string_create("", scratch_pool);
+    mine = svn_string_create_empty(scratch_pool);
   if (incoming == NULL)
-    incoming = svn_string_create("", scratch_pool);
+    incoming = svn_string_create_empty(scratch_pool);
 
   /* Pick a suitable base for the conflict diff.
    * The incoming value is always a change,
@@ -607,7 +607,7 @@ prop_conflict_from_skel(const svn_string
       if (incoming_base)
         original = incoming_base;
       else
-        original = svn_string_create("", scratch_pool);
+        original = svn_string_create_empty(scratch_pool);
     }
   else if (incoming_base && svn_string_compare(original, mine))
     original = incoming_base;

Modified: subversion/trunk/subversion/mod_dav_svn/util.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/mod_dav_svn/util.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/mod_dav_svn/util.c (original)
+++ subversion/trunk/subversion/mod_dav_svn/util.c Fri Oct 28 22:09:51 2011
@@ -709,7 +709,7 @@ request_body_to_string(svn_string_t **re
     }
   else
     {
-      buf = svn_stringbuf_create("", pool);
+      buf = svn_stringbuf_create_empty(pool);
     }
 
   brigade = apr_brigade_create(r->pool, r->connection->bucket_alloc);
@@ -765,7 +765,7 @@ request_body_to_string(svn_string_t **re
   apr_brigade_destroy(brigade);
 
   /* Make an svn_string_t from our svn_stringbuf_t. */
-  *request_str = svn_string_create("", pool);
+  *request_str = svn_string_create_empty(pool);
   (*request_str)->data = buf->data;
   (*request_str)->len = buf->len;
   return OK;

Modified: subversion/trunk/subversion/svn/blame-cmd.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/svn/blame-cmd.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/svn/blame-cmd.c (original)
+++ subversion/trunk/subversion/svn/blame-cmd.c Fri Oct 28 22:09:51 2011
@@ -283,7 +283,7 @@ svn_cl__blame(apr_getopt_t *os,
   if (! opt_state->xml)
     SVN_ERR(svn_stream_for_stdout(&bl.out, pool));
   else
-    bl.sbuf = svn_stringbuf_create("", pool);
+    bl.sbuf = svn_stringbuf_create_empty(pool);
 
   bl.opt_state = opt_state;
 

Modified: subversion/trunk/subversion/svn/diff-cmd.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/svn/diff-cmd.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/svn/diff-cmd.c (original)
+++ subversion/trunk/subversion/svn/diff-cmd.c Fri Oct 28 22:09:51 2011
@@ -89,7 +89,7 @@ summarize_xml(const svn_client_diff_summ
   /* Full path to the object being diffed.  This is created by taking the
    * baton, and appending the target's relative path. */
   const char *path = *(const char **)baton;
-  svn_stringbuf_t *sb = svn_stringbuf_create("", pool);
+  svn_stringbuf_t *sb = svn_stringbuf_create_empty(pool);
 
   /* Tack on the target path, so we can differentiate between different parts
    * of the output when we're given multiple targets. */
@@ -197,7 +197,7 @@ svn_cl__diff(apr_getopt_t *os,
 
       SVN_ERR(svn_cl__xml_print_header("diff", pool));
 
-      sb = svn_stringbuf_create("", pool);
+      sb = svn_stringbuf_create_empty(pool);
       svn_xml_make_open_tag(&sb, pool, svn_xml_normal, "paths", NULL);
       SVN_ERR(svn_cl__error_checked_fputs(sb->data, stdout));
     }
@@ -419,7 +419,7 @@ svn_cl__diff(apr_getopt_t *os,
 
   if (opt_state->xml)
     {
-      svn_stringbuf_t *sb = svn_stringbuf_create("", pool);
+      svn_stringbuf_t *sb = svn_stringbuf_create_empty(pool);
       svn_xml_make_close_tag(&sb, pool, "paths");
       SVN_ERR(svn_cl__error_checked_fputs(sb->data, stdout));
       SVN_ERR(svn_cl__xml_print_footer("diff", pool));

Modified: subversion/trunk/subversion/svn/info-cmd.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/svn/info-cmd.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/svn/info-cmd.c (original)
+++ subversion/trunk/subversion/svn/info-cmd.c Fri Oct 28 22:09:51 2011
@@ -85,7 +85,7 @@ print_info_xml(void *baton,
                const svn_client_info2_t *info,
                apr_pool_t *pool)
 {
-  svn_stringbuf_t *sb = svn_stringbuf_create("", pool);
+  svn_stringbuf_t *sb = svn_stringbuf_create_empty(pool);
   const char *rev_str;
   const char *path_prefix = baton;
 

Modified: subversion/trunk/subversion/svn/list-cmd.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/svn/list-cmd.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/svn/list-cmd.c (original)
+++ subversion/trunk/subversion/svn/list-cmd.c Fri Oct 28 22:09:51 2011
@@ -156,7 +156,7 @@ print_dirent_xml(void *baton,
   if (pb->ctx->cancel_func)
     SVN_ERR(pb->ctx->cancel_func(pb->ctx->cancel_baton));
 
-  sb = svn_stringbuf_create("", pool);
+  sb = svn_stringbuf_create_empty(pool);
 
   svn_xml_make_open_tag(&sb, pool, svn_xml_normal, "entry",
                         "kind", svn_cl__node_kind_str_xml(dirent->kind),
@@ -276,7 +276,7 @@ svn_cl__list(apr_getopt_t *os,
 
       if (opt_state->xml)
         {
-          svn_stringbuf_t *sb = svn_stringbuf_create("", pool);
+          svn_stringbuf_t *sb = svn_stringbuf_create_empty(pool);
           svn_xml_make_open_tag(&sb, pool, svn_xml_normal, "list",
                                 "path", truepath[0] == '\0' ? "." : truepath,
                                 NULL);
@@ -308,7 +308,7 @@ svn_cl__list(apr_getopt_t *os,
 
       if (opt_state->xml)
         {
-          svn_stringbuf_t *sb = svn_stringbuf_create("", pool);
+          svn_stringbuf_t *sb = svn_stringbuf_create_empty(pool);
           svn_xml_make_close_tag(&sb, pool, "list");
           SVN_ERR(svn_cl__error_checked_fputs(sb->data, stdout));
         }

Modified: subversion/trunk/subversion/svn/log-cmd.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/svn/log-cmd.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/svn/log-cmd.c (original)
+++ subversion/trunk/subversion/svn/log-cmd.c Fri Oct 28 22:09:51 2011
@@ -431,7 +431,7 @@ log_entry_receiver_xml(void *baton,
 {
   struct log_receiver_baton *lb = baton;
   /* Collate whole log message into sb before printing. */
-  svn_stringbuf_t *sb = svn_stringbuf_create("", pool);
+  svn_stringbuf_t *sb = svn_stringbuf_create_empty(pool);
   char *revstr;
   const char *author;
   const char *date;

Modified: subversion/trunk/subversion/svn/propedit-cmd.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/svn/propedit-cmd.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/svn/propedit-cmd.c (original)
+++ subversion/trunk/subversion/svn/propedit-cmd.c Fri Oct 28 22:09:51 2011
@@ -122,7 +122,7 @@ svn_cl__propedit(apr_getopt_t *os,
 
       if (! propval)
         {
-          propval = svn_string_create("", pool);
+          propval = svn_string_create_empty(pool);
           /* This is how we signify to svn_client_revprop_set2() that
              we want it to check that the original value hasn't
              changed, but that that original value was non-existent: */
@@ -239,7 +239,7 @@ svn_cl__propedit(apr_getopt_t *os,
           /* Get the property value. */
           propval = apr_hash_get(props, abspath_or_url, APR_HASH_KEY_STRING);
           if (! propval)
-            propval = svn_string_create("", subpool);
+            propval = svn_string_create_empty(subpool);
 
           if (svn_path_is_url(target))
             {

Modified: subversion/trunk/subversion/svn/props.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/svn/props.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/svn/props.c (original)
+++ subversion/trunk/subversion/svn/props.c Fri Oct 28 22:09:51 2011
@@ -156,7 +156,7 @@ svn_cl__print_xml_prop_hash(svn_stringbu
   apr_hash_index_t *hi;
 
   if (*outstr == NULL)
-    *outstr = svn_stringbuf_create("", pool);
+    *outstr = svn_stringbuf_create_empty(pool);
 
   for (hi = apr_hash_first(pool, prop_hash); hi; hi = apr_hash_next(hi))
     {

Modified: subversion/trunk/subversion/svn/status-cmd.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/svn/status-cmd.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/svn/status-cmd.c (original)
+++ subversion/trunk/subversion/svn/status-cmd.c Fri Oct 28 22:09:51 2011
@@ -106,7 +106,7 @@ print_conflict_stats(struct status_baton
 static svn_error_t *
 print_start_target_xml(const char *target, apr_pool_t *pool)
 {
-  svn_stringbuf_t *sb = svn_stringbuf_create("", pool);
+  svn_stringbuf_t *sb = svn_stringbuf_create_empty(pool);
 
   svn_xml_make_open_tag(&sb, pool, svn_xml_normal, "target",
                         "path", target, NULL);
@@ -122,7 +122,7 @@ static svn_error_t *
 print_finish_target_xml(svn_revnum_t repos_rev,
                         apr_pool_t *pool)
 {
-  svn_stringbuf_t *sb = svn_stringbuf_create("", pool);
+  svn_stringbuf_t *sb = svn_stringbuf_create_empty(pool);
 
   if (SVN_IS_VALID_REVNUM(repos_rev))
     {
@@ -355,7 +355,7 @@ svn_cl__status(apr_getopt_t *os,
       svn_stringbuf_t *buf;
 
       if (opt_state->xml)
-        buf = svn_stringbuf_create("", scratch_pool);
+        buf = svn_stringbuf_create_empty(scratch_pool);
 
       for (hi = apr_hash_first(scratch_pool, master_cl_hash); hi;
            hi = apr_hash_next(hi))

Modified: subversion/trunk/subversion/svn/status.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/svn/status.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/svn/status.c (original)
+++ subversion/trunk/subversion/svn/status.c Fri Oct 28 22:09:51 2011
@@ -424,7 +424,7 @@ svn_cl__print_status_xml(const char *pat
                          svn_client_ctx_t *ctx,
                          apr_pool_t *pool)
 {
-  svn_stringbuf_t *sb = svn_stringbuf_create("", pool);
+  svn_stringbuf_t *sb = svn_stringbuf_create_empty(pool);
   apr_hash_t *att_hash;
   const char *local_abspath = status->local_abspath;
   svn_boolean_t tree_conflicted = FALSE;

Modified: subversion/trunk/subversion/svn/util.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/svn/util.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/svn/util.c (original)
+++ subversion/trunk/subversion/svn/util.c Fri Oct 28 22:09:51 2011
@@ -326,7 +326,7 @@ svn_cl__edit_string_externally(svn_strin
       SVN_ERR(svn_subst_translate_cstring2(contents->data, &translated,
                                            APR_EOL_STR, FALSE,
                                            NULL, FALSE, pool));
-      translated_contents = svn_string_create("", pool);
+      translated_contents = svn_string_create_empty(pool);
       if (encoding)
         SVN_ERR(svn_utf_cstring_from_utf8_ex2(&translated_contents->data,
                                               translated, encoding, pool));
@@ -737,7 +737,7 @@ svn_cl__get_log_message(const char **log
       int i;
       svn_stringbuf_t *tmp_message = svn_stringbuf_dup(default_msg, pool);
       svn_error_t *err = SVN_NO_ERROR;
-      svn_string_t *msg_string = svn_string_create("", pool);
+      svn_string_t *msg_string = svn_string_create_empty(pool);
 
       for (i = 0; i < commit_items->nelts; i++)
         {
@@ -876,7 +876,7 @@ svn_cl__get_log_message(const char **log
                 {
                   SVN_ERR(svn_io_remove_file2(lmb->tmpfile_left, FALSE, pool));
                   *tmp_file = lmb->tmpfile_left = NULL;
-                  message = svn_stringbuf_create("", pool);
+                  message = svn_stringbuf_create_empty(pool);
                 }
 
               /* If the user chooses anything else, the loop will
@@ -1058,7 +1058,7 @@ svn_error_t *
 svn_cl__xml_print_header(const char *tagname,
                          apr_pool_t *pool)
 {
-  svn_stringbuf_t *sb = svn_stringbuf_create("", pool);
+  svn_stringbuf_t *sb = svn_stringbuf_create_empty(pool);
 
   /* <?xml version="1.0" encoding="UTF-8"?> */
   svn_xml_make_header2(&sb, "UTF-8", pool);
@@ -1074,7 +1074,7 @@ svn_error_t *
 svn_cl__xml_print_footer(const char *tagname,
                          apr_pool_t *pool)
 {
-  svn_stringbuf_t *sb = svn_stringbuf_create("", pool);
+  svn_stringbuf_t *sb = svn_stringbuf_create_empty(pool);
 
   /* "</TAGNAME>" */
   svn_xml_make_close_tag(&sb, pool, tagname);
@@ -1303,7 +1303,7 @@ svn_cl__indent_string(const char *str,
                       const char *indent,
                       apr_pool_t *pool)
 {
-  svn_stringbuf_t *out = svn_stringbuf_create("", pool);
+  svn_stringbuf_t *out = svn_stringbuf_create_empty(pool);
   const char *line;
 
   while ((line = next_line(&str, pool)))

Modified: subversion/trunk/subversion/svnadmin/main.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/svnadmin/main.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/svnadmin/main.c (original)
+++ subversion/trunk/subversion/svnadmin/main.c Fri Oct 28 22:09:51 2011
@@ -1254,7 +1254,7 @@ set_revprop(const char *prop_name, const
             struct svnadmin_opt_state *opt_state, apr_pool_t *pool)
 {
   svn_repos_t *repos;
-  svn_string_t *prop_value = svn_string_create("", pool);
+  svn_string_t *prop_value = svn_string_create_empty(pool);
   svn_stringbuf_t *file_contents;
 
   SVN_ERR(svn_stringbuf_from_file2(&file_contents, filename, pool));

Modified: subversion/trunk/subversion/svndumpfilter/main.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/svndumpfilter/main.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/svndumpfilter/main.c (original)
+++ subversion/trunk/subversion/svndumpfilter/main.c Fri Oct 28 22:09:51 2011
@@ -271,7 +271,7 @@ new_revision_record(void **revision_bato
   rb->has_props = FALSE;
   rb->had_dropped_nodes = FALSE;
   rb->writing_begun = FALSE;
-  rb->header = svn_stringbuf_create("", pool);
+  rb->header = svn_stringbuf_create_empty(pool);
   rb->props = apr_hash_make(pool);
 
   header_stream = svn_stream_from_stringbuf(rb->header, pool);
@@ -322,7 +322,7 @@ output_revision(struct revision_baton_t 
   char buf[SVN_KEYLINE_MAXLEN];
   apr_hash_index_t *hi;
   apr_pool_t *hash_pool = apr_hash_pool_get(rb->props);
-  svn_stringbuf_t *props = svn_stringbuf_create("", hash_pool);
+  svn_stringbuf_t *props = svn_stringbuf_create_empty(hash_pool);
   apr_pool_t *subpool = svn_pool_create(hash_pool);
 
   rb->writing_begun = TRUE;
@@ -551,8 +551,8 @@ new_node_record(void **node_baton,
       nb->has_text = FALSE;
       nb->writing_begun = FALSE;
       nb->tcl = tcl ? svn__atoui64(tcl) : 0;
-      nb->header = svn_stringbuf_create("", pool);
-      nb->props = svn_stringbuf_create("", pool);
+      nb->header = svn_stringbuf_create_empty(pool);
+      nb->props = svn_stringbuf_create_empty(pool);
 
       /* Now we know for sure that we have a node that will not be
          skipped, flush the revision if it has not already been done. */

Modified: subversion/trunk/subversion/svnlook/main.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/svnlook/main.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/svnlook/main.c (original)
+++ subversion/trunk/subversion/svnlook/main.c Fri Oct 28 22:09:51 2011
@@ -867,11 +867,11 @@ display_prop_diffs(const apr_array_heade
            Since the diff is not useful anyway for patching properties an
            eol character is appended when needed to remove those pescious
            ' \ No newline at end of file' lines. */
-        tmp = orig_value ? orig_value : svn_string_create("", pool);
+        tmp = orig_value ? orig_value : svn_string_create_empty(pool);
         orig = maybe_append_eol(tmp, pool);
 
         tmp = pc->value ? pc->value :
-                                  svn_string_create("", pool);
+                                  svn_string_create_empty(pool);
         val = maybe_append_eol(tmp, pool);
 
         SVN_ERR(svn_diff_mem_string_diff(&diff, orig, val, &options, pool));
@@ -921,7 +921,7 @@ print_diff_tree(svn_fs_root_t *root,
   if (! node)
     return SVN_NO_ERROR;
 
-  header = svn_stringbuf_create("", pool);
+  header = svn_stringbuf_create_empty(pool);
 
   /* Print copyfrom history for the top node of a copied tree. */
   if ((SVN_IS_VALID_REVNUM(node->copyfrom_rev))

Modified: subversion/trunk/subversion/svnrdump/dump_editor.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/svnrdump/dump_editor.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/svnrdump/dump_editor.c (original)
+++ subversion/trunk/subversion/svnrdump/dump_editor.c Fri Oct 28 22:09:51 2011
@@ -383,7 +383,7 @@ open_root(void *edit_baton,
 
   eb->props = apr_hash_make(eb->pool);
   eb->deleted_props = apr_hash_make(eb->pool);
-  eb->propstring = svn_stringbuf_create("", eb->pool);
+  eb->propstring = svn_stringbuf_create_empty(eb->pool);
 
   *root_baton = make_dir_baton(NULL, NULL, SVN_INVALID_REVNUM,
                                edit_baton, NULL, FALSE, eb->pool);

Modified: subversion/trunk/subversion/svnrdump/svnrdump.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/svnrdump/svnrdump.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/svnrdump/svnrdump.c (original)
+++ subversion/trunk/subversion/svnrdump/svnrdump.c Fri Oct 28 22:09:51 2011
@@ -311,7 +311,7 @@ dump_revision_header(svn_ra_session_t *s
                             ": %ld\n", revision));
 
   prophash = apr_hash_make(pool);
-  propstring = svn_stringbuf_create("", pool);
+  propstring = svn_stringbuf_create_empty(pool);
   SVN_ERR(svn_ra_rev_proplist(session, revision, &prophash, pool));
 
   propstream = svn_stream_from_stringbuf(propstring, pool);

Modified: subversion/trunk/subversion/svnserve/serve.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/svnserve/serve.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/svnserve/serve.c (original)
+++ subversion/trunk/subversion/svnserve/serve.c Fri Oct 28 22:09:51 2011
@@ -3072,7 +3072,7 @@ svn_error_t *serve(svn_ra_svn_conn_t *co
   apr_array_header_t *caplist, *cap_words;
   server_baton_t b;
   fs_warning_baton_t warn_baton;
-  svn_stringbuf_t *cap_log = svn_stringbuf_create("", pool);
+  svn_stringbuf_t *cap_log = svn_stringbuf_create_empty(pool);
 
   b.tunnel = params->tunnel;
   b.tunnel_user = get_tunnel_user(params, pool);

Modified: subversion/trunk/subversion/svnsync/main.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/svnsync/main.c?rev=1190623&r1=1190622&r2=1190623&view=diff
==============================================================================
--- subversion/trunk/subversion/svnsync/main.c (original)
+++ subversion/trunk/subversion/svnsync/main.c Fri Oct 28 22:09:51 2011
@@ -1089,7 +1089,7 @@ replay_rev_started(svn_revnum_t revision
      replay_rev_finished callback. */
   if (! apr_hash_get(filtered, SVN_PROP_REVISION_LOG, APR_HASH_KEY_STRING))
     apr_hash_set(filtered, SVN_PROP_REVISION_LOG, APR_HASH_KEY_STRING,
-                 svn_string_create("", pool));
+                 svn_string_create_empty(pool));
 
   /* If necessary, normalize encoding and line ending style. Add the number
      of properties that required EOL normalization to the overall count



Mime
View raw message