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 2014/04/11 16:56:10 UTC
svn commit: r1586668 -
/subversion/trunk/subversion/tests/cmdline/svnrdump_tests.py
Author: julianfoad
Date: Fri Apr 11 14:56:10 2014
New Revision: 1586668
URL: http://svn.apache.org/r1586668
Log:
Add a regression test for issue #4490 'svnrdump load crashes on a prop
change in a non-deltas dump'.
* subversion/tests/cmdline/svnrdump_tests.py
(load_prop_change_in_non_deltas_dump): New test.
(test_list): Run it.
Modified:
subversion/trunk/subversion/tests/cmdline/svnrdump_tests.py
Modified: subversion/trunk/subversion/tests/cmdline/svnrdump_tests.py
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/tests/cmdline/svnrdump_tests.py?rev=1586668&r1=1586667&r2=1586668&view=diff
==============================================================================
--- subversion/trunk/subversion/tests/cmdline/svnrdump_tests.py (original)
+++ subversion/trunk/subversion/tests/cmdline/svnrdump_tests.py Fri Apr 11 14:56:10 2014
@@ -769,6 +769,34 @@ def only_trunk_A_range_dump(sbox):
#----------------------------------------------------------------------
+@Issue(4490)
+def load_prop_change_in_non_deltas_dump(sbox):
+ "load: prop change in non-deltas dump"
+ # 'svnrdump load' crashed when processing a node record with a non-delta
+ # properties block if the node previously had any svn:* properties.
+
+ sbox.build()
+ sbox.simple_propset('svn:eol-style', 'native', 'iota', 'A/mu', 'A/B/lambda')
+ sbox.simple_commit()
+
+ # Any prop change on a node that had an svn:* prop triggered the crash,
+ # so test an svn:* prop deletion and also some other prop changes.
+ sbox.simple_propdel('svn:eol-style', 'iota')
+ sbox.simple_propset('svn:eol-style', 'LF', 'A/mu')
+ sbox.simple_propset('p1', 'v1', 'A/B/lambda')
+ sbox.simple_commit()
+
+ # Create a non-deltas dump. Use 'svnadmin', as svnrdump doesn't have that
+ # option.
+ dump = svntest.actions.run_and_verify_dump(sbox.repo_dir, deltas=False)
+
+ # Try to load that dump.
+ build_repos(sbox)
+ svntest.actions.enable_revprop_changes(sbox.repo_dir)
+ svntest.actions.run_and_verify_svnrdump(dump,
+ [], [], 0,
+ '-q', 'load', sbox.repo_url)
+
########################################################################
# Run the tests
@@ -824,6 +852,7 @@ test_list = [ None,
range_dump,
only_trunk_range_dump,
only_trunk_A_range_dump,
+ load_prop_change_in_non_deltas_dump,
]
if __name__ == '__main__':