Author: rhuijben
Date: Fri Feb 20 13:56:13 2015
New Revision: 1661121
URL: http://svn.apache.org/r1661121
Log:
Following up on r1661120 and a whole lot of previous attempts fix issue #4467.
* subversion/libsvn_client/blame.c
(file_rev_handler): Get rid of assertion that doesn't really make sense now.
(It would have required an additional exception that would let half the
interesting cases get through)
* subversion/tests/cmdline/blame_tests.py
(blame_reverse_no_change): Remove XFail marker. Add comments.
Modified:
subversion/trunk/subversion/libsvn_client/blame.c
subversion/trunk/subversion/tests/cmdline/blame_tests.py
Modified: subversion/trunk/subversion/libsvn_client/blame.c
URL:
http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_client/blame.c?rev=1661121&r1=1661120&r2=1661121&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_client/blame.c (original)
+++ subversion/trunk/subversion/libsvn_client/blame.c Fri Feb 20 13:56:13 2015
@@ -504,11 +504,12 @@ file_rev_handler(void *baton, const char
{
/* We shouldn't get more than one revision outside the
specified range (unless we alsoe receive merged revisions) */
- SVN_ERR_ASSERT(frb->last_filename == NULL
- || frb->include_merged_revisions);
/* The file existed before start_rev; generate no blame info for
- lines from this revision (or before). */
+ lines from this revision (or before).
+
+ This revision specifies the state as it was at the start revision */
+
delta_baton->rev->revision = SVN_INVALID_REVNUM;
}
Modified: subversion/trunk/subversion/tests/cmdline/blame_tests.py
URL:
http://svn.apache.org/viewvc/subversion/trunk/subversion/tests/cmdline/blame_tests.py?rev=1661121&r1=1661120&r2=1661121&view=diff
==============================================================================
--- subversion/trunk/subversion/tests/cmdline/blame_tests.py (original)
+++ subversion/trunk/subversion/tests/cmdline/blame_tests.py Fri Feb 20
13:56:13 2015
@@ -977,12 +977,12 @@ def blame_youngest_to_oldest(sbox):
'blame', '-r1:HEAD', iota_moved)
@Issue(4467)
-@XFail()
def blame_reverse_no_change(sbox):
"blame reverse towards a revision with no change"
sbox.build()
+ # Introduce a revision where iota doesn't change!
sbox.simple_propset('a', 'b', 'A')
sbox.simple_commit('') #r2
@@ -1003,6 +1003,7 @@ def blame_reverse_no_change(sbox):
expected_output = [
' 4 jrandom This is the file \'iota\'.\n',
]
+ # This used to trigger an assertion on 1.9.x before 1.9.0
svntest.actions.run_and_verify_svn(expected_output, [],
'blame', '-rHEAD:2', sbox.ospath('iota'))