You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by ju...@apache.org on 2015/10/12 12:22:27 UTC

svn commit: r1708080 [2/2] - in /subversion/branches/move-tracking-2: ./ subversion/ subversion/include/ subversion/libsvn_client/ subversion/libsvn_fs/ subversion/libsvn_fs_base/ subversion/libsvn_fs_fs/ subversion/libsvn_fs_x/ subversion/libsvn_ra_se...

Modified: subversion/branches/move-tracking-2/subversion/libsvn_repos/rev_hunt.c
URL: http://svn.apache.org/viewvc/subversion/branches/move-tracking-2/subversion/libsvn_repos/rev_hunt.c?rev=1708080&r1=1708079&r2=1708080&view=diff
==============================================================================
--- subversion/branches/move-tracking-2/subversion/libsvn_repos/rev_hunt.c (original)
+++ subversion/branches/move-tracking-2/subversion/libsvn_repos/rev_hunt.c Mon Oct 12 10:22:26 2015
@@ -65,8 +65,8 @@ get_time(apr_time_t *tm,
 {
   svn_string_t *date_str;
 
-  SVN_ERR(svn_fs_revision_prop(&date_str, fs, rev, SVN_PROP_REVISION_DATE,
-                               pool));
+  SVN_ERR(svn_fs_revision_prop2(&date_str, fs, rev, SVN_PROP_REVISION_DATE,
+                                FALSE, pool, pool));
   if (! date_str)
     return svn_error_createf
       (SVN_ERR_FS_GENERAL, NULL,
@@ -88,6 +88,7 @@ svn_repos_dated_revision(svn_revnum_t *r
 
   /* Initialize top and bottom values of binary search. */
   SVN_ERR(svn_fs_youngest_rev(&rev_latest, fs, pool));
+  SVN_ERR(svn_fs_refresh_revision_props(fs, pool));
   rev_bot = 0;
   rev_top = rev_latest;
 
@@ -170,7 +171,8 @@ svn_repos_get_committed_info(svn_revnum_
   SVN_ERR(svn_fs_node_created_rev(committed_rev, root, path, pool));
 
   /* Get the revision properties of this revision. */
-  SVN_ERR(svn_fs_revision_proplist(&revprops, fs, *committed_rev, pool));
+  SVN_ERR(svn_fs_revision_proplist2(&revprops, fs, *committed_rev, TRUE,
+                                    pool, pool));
 
   /* Extract date and author from these revprops. */
   committed_date_s = svn_hash_gets(revprops, SVN_PROP_REVISION_DATE);
@@ -1358,8 +1360,9 @@ send_path_revision(struct path_revision
   svn_pool_clear(sb->iterpool);
 
   /* Get the revision properties. */
-  SVN_ERR(svn_fs_revision_proplist(&rev_props, repos->fs,
-                                   path_rev->revnum, sb->iterpool));
+  SVN_ERR(svn_fs_revision_proplist2(&rev_props, repos->fs,
+                                    path_rev->revnum, FALSE,
+                                    sb->iterpool, sb->iterpool));
 
   /* Open the revision root. */
   SVN_ERR(svn_fs_revision_root(&root, repos->fs, path_rev->revnum,
@@ -1594,6 +1597,10 @@ svn_repos_get_file_revs2(svn_repos_t *re
         end = youngest_rev;
     }
 
+  /* Make sure we catch up on the latest revprop changes.  This is the only
+   * time we will refresh the revprop data in this query. */
+  SVN_ERR(svn_fs_refresh_revision_props(repos->fs, scratch_pool));
+
   if (end < start)
     {
       if (include_merged_revisions)

Modified: subversion/branches/move-tracking-2/subversion/libsvn_subr/stream.c
URL: http://svn.apache.org/viewvc/subversion/branches/move-tracking-2/subversion/libsvn_subr/stream.c?rev=1708080&r1=1708079&r2=1708080&view=diff
==============================================================================
--- subversion/branches/move-tracking-2/subversion/libsvn_subr/stream.c (original)
+++ subversion/branches/move-tracking-2/subversion/libsvn_subr/stream.c Mon Oct 12 10:22:26 2015
@@ -1490,7 +1490,7 @@ svn_stringbuf_from_stream(svn_stringbuf_
 
   apr_size_t to_read = 0;
   svn_stringbuf_t *text
-    = svn_stringbuf_create_ensure(len_hint ? len_hint : MIN_READ_SIZE,
+    = svn_stringbuf_create_ensure(len_hint + MIN_READ_SIZE,
                                   result_pool);
 
   do

Modified: subversion/branches/move-tracking-2/subversion/libsvn_wc/conflicts.c
URL: http://svn.apache.org/viewvc/subversion/branches/move-tracking-2/subversion/libsvn_wc/conflicts.c?rev=1708080&r1=1708079&r2=1708080&view=diff
==============================================================================
--- subversion/branches/move-tracking-2/subversion/libsvn_wc/conflicts.c (original)
+++ subversion/branches/move-tracking-2/subversion/libsvn_wc/conflicts.c Mon Oct 12 10:22:26 2015
@@ -1351,8 +1351,6 @@ generate_propconflict(svn_boolean_t *con
         }
       case svn_wc_conflict_choose_merged:
         {
-          svn_stringbuf_t *merged_stringbuf;
-
           if (!cdesc->merged_file 
               && (!result->merged_file && !result->merged_value))
             return svn_error_create
@@ -1364,6 +1362,8 @@ generate_propconflict(svn_boolean_t *con
             new_value = result->merged_value;
           else
             {
+              svn_stringbuf_t *merged_stringbuf;
+
               SVN_ERR(svn_stringbuf_from_file2(&merged_stringbuf,
                                                result->merged_file ?
                                                     result->merged_file :
@@ -2472,15 +2472,12 @@ resolve_prop_conflict_on_node(svn_boolea
 
           if (!merged_value)
             {
-              svn_stream_t *stream;
-              svn_string_t *merged_propval;
+              svn_stringbuf_t *merged_propval;
 
-              SVN_ERR(svn_stream_open_readonly(&stream, merged_file,
-                                               scratch_pool, scratch_pool));
-              SVN_ERR(svn_string_from_stream(&merged_propval, stream,
-                                             scratch_pool, scratch_pool));
+              SVN_ERR(svn_stringbuf_from_file2(&merged_propval, merged_file,
+                                               scratch_pool));
 
-              merged_value = merged_propval;
+              merged_value = svn_stringbuf__morph_into_string(merged_propval);
             }
           svn_hash_sets(resolve_from, conflicted_propname, merged_value);
         }

Modified: subversion/branches/move-tracking-2/subversion/svnlook/svnlook.c
URL: http://svn.apache.org/viewvc/subversion/branches/move-tracking-2/subversion/svnlook/svnlook.c?rev=1708080&r1=1708079&r2=1708080&view=diff
==============================================================================
--- subversion/branches/move-tracking-2/subversion/svnlook/svnlook.c (original)
+++ subversion/branches/move-tracking-2/subversion/svnlook/svnlook.c Mon Oct 12 10:22:26 2015
@@ -426,8 +426,8 @@ get_property(svn_string_t **prop_value,
 
   /* ...or revision property -- it's your call. */
   else
-    SVN_ERR(svn_fs_revision_prop(&raw_value, c->fs, c->rev_id,
-                                 prop_name, pool));
+    SVN_ERR(svn_fs_revision_prop2(&raw_value, c->fs, c->rev_id,
+                                  prop_name, TRUE, pool, pool));
 
   *prop_value = raw_value;
 
@@ -756,8 +756,9 @@ generate_label(const char **label,
       if (svn_fs_is_revision_root(root))
         {
           rev = svn_fs_revision_root_revision(root);
-          SVN_ERR(svn_fs_revision_prop(&date, fs, rev,
-                                       SVN_PROP_REVISION_DATE, pool));
+          SVN_ERR(svn_fs_revision_prop2(&date, fs, rev,
+                                        SVN_PROP_REVISION_DATE, TRUE,
+                                        pool, pool));
         }
       else
         {
@@ -1876,7 +1877,8 @@ do_plist(svnlook_ctxt_t *c,
     }
   else if (c->is_revision)
     {
-      SVN_ERR(svn_fs_revision_proplist(&props, c->fs, c->rev_id, pool));
+      SVN_ERR(svn_fs_revision_proplist2(&props, c->fs, c->rev_id, TRUE,
+                                        pool, pool));
       revprop = TRUE;
     }
   else

Modified: subversion/branches/move-tracking-2/subversion/tests/cmdline/diff_tests.py
URL: http://svn.apache.org/viewvc/subversion/branches/move-tracking-2/subversion/tests/cmdline/diff_tests.py?rev=1708080&r1=1708079&r2=1708080&view=diff
==============================================================================
--- subversion/branches/move-tracking-2/subversion/tests/cmdline/diff_tests.py (original)
+++ subversion/branches/move-tracking-2/subversion/tests/cmdline/diff_tests.py Mon Oct 12 10:22:26 2015
@@ -5088,6 +5088,59 @@ def diff_symlinks(sbox):
   ], [], 'diff', wc_dir, '--git')
 
 
+@Issue(4597)
+def diff_peg_resolve(sbox):
+  "peg resolving during diff"
+
+  sbox.build()
+  repo_url = sbox.repo_url
+  wc_dir = sbox.wc_dir
+
+  svntest.actions.run_and_verify_svnmucc(None, [],
+                                         '-U', repo_url, '-m', 'Q',
+                                         'mkdir', 'branches',
+                                         'cp', 1, 'A', 'branches/A1',
+                                         'cp', 1, 'A', 'branches/A2',
+                                         'rm', 'A')
+
+  svntest.actions.run_and_verify_svnmucc(None, [],
+                                         '-U', repo_url, '-m', 'Q2',
+                                         'rm', 'branches/A1')
+
+  svntest.actions.run_and_verify_svn(None, [],
+                                     'diff', repo_url + '/branches/A1@2',
+                                             sbox.wc_dir,
+                                     '--notice-ancestry')
+
+  svntest.actions.run_and_verify_svn(None, [],
+                                     'diff',
+                                     '--old=' + repo_url + '/branches/A1@2',
+                                     '--new=' + sbox.wc_dir,
+                                     '--git')
+
+  svntest.actions.run_and_verify_svn(None, [],
+                                     'diff',
+                                     '--old=' + repo_url + '/branches/A1@2',
+                                     '--new=' + repo_url + '/A@1',
+                                     '--git')
+
+  svntest.actions.run_and_verify_svn(None, '.*E160005: Target path.*A1',
+                                     'diff',
+                                     repo_url + '/branches/A1',
+                                     wc_dir,
+                                     '--summarize')
+
+  svntest.actions.run_and_verify_svn(None, [],
+                                     'diff',
+                                     repo_url + '/branches/A2',
+                                     wc_dir)
+
+  svntest.actions.run_and_verify_svn(None, '.*E200009: .*mix.*',
+                                     'diff',
+                                     repo_url + '/branches/A2',
+                                     wc_dir, '-r1:2')
+
+
 ########################################################################
 #Run the tests
 
@@ -5182,6 +5235,7 @@ test_list = [ None,
               diff_incomplete,
               diff_incomplete_props,
               diff_symlinks,
+              diff_peg_resolve,
               ]
 
 if __name__ == '__main__':

Modified: subversion/branches/move-tracking-2/subversion/tests/cmdline/export_tests.py
URL: http://svn.apache.org/viewvc/subversion/branches/move-tracking-2/subversion/tests/cmdline/export_tests.py?rev=1708080&r1=1708079&r2=1708080&view=diff
==============================================================================
--- subversion/branches/move-tracking-2/subversion/tests/cmdline/export_tests.py (original)
+++ subversion/branches/move-tracking-2/subversion/tests/cmdline/export_tests.py Mon Oct 12 10:22:26 2015
@@ -1102,7 +1102,7 @@ test_list = [ None,
               export_file_overwrite_with_force,
               export_custom_keywords,
               export_file_external,
-              export_file_externals2
+              export_file_externals2,
              ]
 
 if __name__ == '__main__':

Modified: subversion/branches/move-tracking-2/subversion/tests/cmdline/merge_automatic_tests.py
URL: http://svn.apache.org/viewvc/subversion/branches/move-tracking-2/subversion/tests/cmdline/merge_automatic_tests.py?rev=1708080&r1=1708079&r2=1708080&view=diff
==============================================================================
--- subversion/branches/move-tracking-2/subversion/tests/cmdline/merge_automatic_tests.py (original)
+++ subversion/branches/move-tracking-2/subversion/tests/cmdline/merge_automatic_tests.py Mon Oct 12 10:22:26 2015
@@ -1429,7 +1429,7 @@ test_list = [ None,
               effective_sync_results_in_reintegrate,
               reintegrate_subtree_not_updated,
               merge_to_copy_and_add,
-              merge_delete_crlf_file
+              merge_delete_crlf_file,
              ]
 
 if __name__ == '__main__':

Modified: subversion/branches/move-tracking-2/subversion/tests/cmdline/patch_tests.py
URL: http://svn.apache.org/viewvc/subversion/branches/move-tracking-2/subversion/tests/cmdline/patch_tests.py?rev=1708080&r1=1708079&r2=1708080&view=diff
==============================================================================
--- subversion/branches/move-tracking-2/subversion/tests/cmdline/patch_tests.py (original)
+++ subversion/branches/move-tracking-2/subversion/tests/cmdline/patch_tests.py Mon Oct 12 10:22:26 2015
@@ -5341,7 +5341,7 @@ def patch_delete_modified(sbox):
   expected_skip = wc.State('', { })
   reject_file_contents = [
     "--- A/B/E/beta\n",
-    "+++ A/B/E/beta\n",
+    "+++ /dev/null\n",
     "@@ -1,1 +0,0 @@\n",
     "-This is the file 'beta'.\n",
   ]
@@ -7016,7 +7016,7 @@ def patch_git_symlink(sbox):
   expected_disk.add({
     'link-to-iota.svnpatch.rej': Item(
                      contents='--- link-to-iota\n'
-                              '+++ link-to-iota\n'
+                              '+++ /dev/null\n'
                               '@@ -1,1 +0,0 @@\n'
                               '-A/mu\n'
                               '\\ No newline at end of file\n'),
@@ -7136,7 +7136,7 @@ def patch_like_git_symlink(sbox):
   expected_disk.add({
     'link-to-iota.svnpatch.rej': Item(
                      contents='--- link-to-iota\n'
-                              '+++ link-to-iota\n'
+                              '+++ /dev/null\n'
                               '@@ -1,1 +0,0 @@\n'
                               '-A/mu\n'
                               '\\ No newline at end of file\n'),

Modified: subversion/branches/move-tracking-2/subversion/tests/cmdline/svnadmin_tests.py
URL: http://svn.apache.org/viewvc/subversion/branches/move-tracking-2/subversion/tests/cmdline/svnadmin_tests.py?rev=1708080&r1=1708079&r2=1708080&view=diff
==============================================================================
--- subversion/branches/move-tracking-2/subversion/tests/cmdline/svnadmin_tests.py (original)
+++ subversion/branches/move-tracking-2/subversion/tests/cmdline/svnadmin_tests.py Mon Oct 12 10:22:26 2015
@@ -3304,7 +3304,7 @@ test_list = [ None,
               fsfs_pack_non_sharded,
               load_revprops,
               dump_revprops,
-              dump_no_op_change
+              dump_no_op_change,
              ]
 
 if __name__ == '__main__':

Propchange: subversion/branches/move-tracking-2/tools/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Mon Oct 12 10:22:26 2015
@@ -82,4 +82,4 @@
 /subversion/branches/verify-at-commit/tools:1462039-1462408
 /subversion/branches/verify-keep-going/tools:1439280-1546110
 /subversion/branches/wc-collate-path/tools:1402685-1480384
-/subversion/trunk/tools:1606692-1705711
+/subversion/trunk/tools:1606692-1708078

Modified: subversion/branches/move-tracking-2/tools/client-side/svn-mergeinfo-normalizer/help-cmd.c
URL: http://svn.apache.org/viewvc/subversion/branches/move-tracking-2/tools/client-side/svn-mergeinfo-normalizer/help-cmd.c?rev=1708080&r1=1708079&r2=1708080&view=diff
==============================================================================
--- subversion/branches/move-tracking-2/tools/client-side/svn-mergeinfo-normalizer/help-cmd.c (original)
+++ subversion/branches/move-tracking-2/tools/client-side/svn-mergeinfo-normalizer/help-cmd.c Mon Oct 12 10:22:26 2015
@@ -50,8 +50,8 @@ svn_min__help(apr_getopt_t *os,
   const char *config_path;
 
   char help_header[] =
-  N_("usage: svn <subcommand> [options] [args]\n"
-     "Subversion svn:mergeinfo normalization and reduction tool.\n"
+  N_("usage: svn-mergeinfo-normalizer <subcommand> [options] [args]\n"
+     "Subversion mergeinfo normalization and reduction tool.\n"
      "Type 'svn-mergeinfo-normalizer help <subcommand>' for help on a specific\n"
      "subcommand.  Type 'svn-mergeinfo-normalizer --version' to see the program\n"
      "version and RA modules or 'svn-mergeinfo-normalizer --version --quiet'\n"