Wed, 16 Nov 2011 08:34:36 +0100 hook: flush stdout before redirecting to stderr stable
Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> [Wed, 16 Nov 2011 08:34:36 +0100] rev 15512
hook: flush stdout before redirecting to stderr When hook output redirection is enabled (e.g. when cloning over ssh), hook output on stdout is redirected to stderr, to prevent the repository data on stdout from being corrupted. In certain cases, the redirection could cause part of the repository data to end up on stderr as well. In case of a clone, this causes: "abort: consistency error in delta!" This was seen with a clone over ssh, an outgoing hook present (any non-python type, e.g. 'pwd'), on certain repositories only, probably depending on the distribution of the sent data) This patch updates the hook redirection code to flush stdout before redirecting, removing the problem.
Wed, 16 Nov 2011 12:53:10 +0100 import: fix parent selection when importing merges stable
Patrick Mezard <pmezard@gmail.com> [Wed, 16 Nov 2011 12:53:10 +0100] rev 15511
import: fix parent selection when importing merges With "wp1" and "wp2" the current working directory parents, "p1" and "p2" the patch parents and "parents" the resulting commit parents, the current behaviour is: --bypass --exact p2 parents 0 0 0 [wp1, wp2] 0 0 1 [wp1, wp2]/buggy 0 1 0 [p1] 0 1 1 [p1, p2] 1 0 0 [wp1, wp2] 1 0 1 [p1, p2] 1 1 0 [p1] 1 1 1 [p1, p2] The original behaviour before f53dc0787424 was: --bypass --exact p2 parents 0 0 0 [wp1, wp2] 0 0 1 if p1 == wp1 then [p1, p2] otherwise [wp1, wp2] 0 1 0 [p1] 0 1 1 [p1, p2] This patch restores the previous behaviour when --bypass is not set, and align --bypass behaviour when --exact is not set with merge diffs.
Mon, 14 Nov 2011 18:16:01 +0100 patch: simplify hunk extents parsing
Patrick Mezard <pmezard@gmail.com> [Mon, 14 Nov 2011 18:16:01 +0100] rev 15510
patch: simplify hunk extents parsing Do not capture unwanted groups in regexps
(0) -10000 -3000 -1000 -300 -100 -30 -10 -3 +3 +10 +30 +100 +300 +1000 +3000 +10000 +30000 tip