Mercurial > public > mercurial-scm > hg
diff tests/test-hgweb-commands.t @ 16722:7bf48bc7de23 stable
hgweb: fix filediff base calculation
Previously, we were finding the most recent version of a file in a
changeset and comparing it against its first file parent. This was
wrong on three counts:
- it would show a diff in revisions where there was no change to a file
- it would show a diff when only the exec bit changed
- it would potentially compare against a much older changeset, which
could be very expensive if git-style rename detection was enabled
This compares the file in the current context with that context's
parent, which may result in an empty diff when looking at a file not
touched by the current changeset.
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Mon, 14 May 2012 12:56:43 +0200 |
parents | 6097ede2be4d |
children | d490edc71146 |
line wrap: on
line diff
--- a/tests/test-hgweb-commands.t Sun May 13 17:34:55 2012 +0200 +++ b/tests/test-hgweb-commands.t Mon May 14 12:56:43 2012 +0200 @@ -663,15 +663,24 @@ </body> </html> + $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/filediff/0/foo/?style=raw' + 200 Script output follows + + + diff -r 000000000000 -r 2ef0ac749a14 foo + --- /dev/null Thu Jan 01 00:00:00 1970 +0000 + +++ b/foo Thu Jan 01 00:00:00 1970 +0000 + @@ -0,0 +1,1 @@ + +foo + + + + + $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/filediff/1/foo/?style=raw' 200 Script output follows - diff -r 000000000000 -r a4f92ed23982 foo - --- /dev/null Thu Jan 01 00:00:00 1970 +0000 - +++ b/foo Thu Jan 01 00:00:00 1970 +0000 - @@ -0,0 +1,1 @@ - +foo