You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by st...@apache.org on 2012/09/10 15:28:23 UTC
svn commit: r1382827 - in /subversion/branches/1.6.x: ./ STATUS
subversion/libsvn_repos/replay.c
Author: stsp
Date: Mon Sep 10 13:28:22 2012
New Revision: 1382827
URL: http://svn.apache.org/viewvc?rev=1382827&view=rev
Log:
Merge r1338810 and r1339164 from trunk.
* r1338810, r1339164
Fix issue #4184 ("partial svnsync drops properties when converting
copies to adds").
Justification:
Syncs that don't aren't synced at all.
Notes:
r1338810 taught the code to send properties for demoted copies.
r1339164 fixed a theoretical use of uninitialized memory.
Votes:
+1: philip, stsp, cmpilato
+0: danielsh
Modified:
subversion/branches/1.6.x/ (props changed)
subversion/branches/1.6.x/STATUS
subversion/branches/1.6.x/subversion/libsvn_repos/replay.c
Propchange: subversion/branches/1.6.x/
------------------------------------------------------------------------------
Merged /subversion/trunk:r1338810,1339164
Modified: subversion/branches/1.6.x/STATUS
URL: http://svn.apache.org/viewvc/subversion/branches/1.6.x/STATUS?rev=1382827&r1=1382826&r2=1382827&view=diff
==============================================================================
--- subversion/branches/1.6.x/STATUS (original)
+++ subversion/branches/1.6.x/STATUS Mon Sep 10 13:28:22 2012
@@ -63,16 +63,3 @@ Veto-blocked changes:
Approved changes:
=================
-
- * r1338810, r1339164
- Fix issue #4184 ("partial svnsync drops properties when converting
- copies to adds").
- Justification:
- Syncs that don't aren't synced at all.
- Notes:
- r1338810 taught the code to send properties for demoted copies.
- r1339164 fixed a theoretical use of uninitialized memory.
- r1339154 is an obvious fix of an accidental docstring tweak.
- Votes:
- +1: philip, stsp, cmpilato
- +0: danielsh
Modified: subversion/branches/1.6.x/subversion/libsvn_repos/replay.c
URL: http://svn.apache.org/viewvc/subversion/branches/1.6.x/subversion/libsvn_repos/replay.c?rev=1382827&r1=1382826&r2=1382827&view=diff
==============================================================================
--- subversion/branches/1.6.x/subversion/libsvn_repos/replay.c (original)
+++ subversion/branches/1.6.x/subversion/libsvn_repos/replay.c Mon Sep 10 13:28:22 2012
@@ -582,10 +582,18 @@ path_driver_cb_func(void **dir_baton,
}
}
- /* Handle property modifications. */
if (! do_delete || do_add)
{
- if (change->prop_mod)
+ /* Is this a copy that was downgraded to a raw add? (If so,
+ we'll need to transmit properties and file contents and such
+ for it regardless of what the CHANGE structure's text_mod
+ and prop_mod flags say.) */
+ svn_boolean_t downgraded_copy = (change->copyfrom_known
+ && change->copyfrom_path
+ && (! copyfrom_path));
+
+ /* Handle property modifications. */
+ if (change->prop_mod || downgraded_copy)
{
if (cb->compare_root)
{
@@ -629,14 +637,9 @@ path_driver_cb_func(void **dir_baton,
}
}
- /* Handle textual modifications.
-
- Note that this needs to happen in the "copy from a file we
- aren't allowed to see" case since otherwise the caller will
- have no way to actually get the new file's contents, which
- they are apparently allowed to see. */
+ /* Handle textual modifications. */
if (change->node_kind == svn_node_file
- && (change->text_mod || (change->copyfrom_path && ! copyfrom_path)))
+ && (change->text_mod || downgraded_copy))
{
svn_txdelta_window_handler_t delta_handler;
void *delta_handler_baton;