tests/test-double-merge
author Dirkjan Ochtman <dirkjan@ochtman.nl>
Tue, 25 Sep 2007 19:05:34 +0200
changeset 5337 8c5ef3b87cb1
parent 5057 99a4592ea886
permissions -rwxr-xr-x
Don't try to determine interactivity if ui() called with interactive=False. WSGI applications are not supposed to refer to sys.stdin. In ed6df6b1c29a, hgweb and hgwebdir were fixed to pass interactive=False to their ui()'s, but sys.stdin.isatty() was still called by the ui objects. This change makes sure only the ui.fixconfig() method will call ui.isatty() (by making the ui._readline() method, which is currently only called from ui.prompt(), private). ui.fixconfig() is changed to let config files override the initial interactivity setting, but not check isatty() if interactive=False was specified in the creation of the ui.

#!/bin/sh

hg init repo
cd repo

echo line 1 > foo
hg ci -qAm 'add foo' -d "1000000 0"

# copy foo to bar and change both files
hg cp foo bar
echo line 2-1 >> foo
echo line 2-2 >> bar
hg ci -m 'cp foo bar; change both' -d "1000000 0"

# in another branch, change foo in a way that doesn't conflict with
# the other changes
hg up -qC 0
echo line 0 > foo
hg cat foo >> foo
hg ci -m 'change foo' -d "1000000 0"

# we get conflicts that shouldn't be there
hg merge --debug

echo "-- foo --"
cat foo

echo "-- bar --"
cat bar