tests/test-diffdir
author Alexandre Fayolle <alexandre.fayolle@logilab.fr>
Thu, 23 Sep 2010 11:41:27 +0200
branchstable
changeset 12391 ca5fd84d62c6
parent 4180 f80cf8b7bbd9
permissions -rwxr-xr-x
Fix memory leak when using hg commands over http repositories When using hg commands over an http repository in a long running process, a httphandler instance is leaked for each command, because of a loop handler.parent -> OpenerDirector and OpenerDirector.handlers -> handler which is not handled by Python's gc. Discussion on #mercurial concluded that removing the __del__ method solved the problem.

#!/bin/sh

hg init
touch a
hg add a
hg ci -m "a" -d "1000000 0"

echo 123 > b
hg add b
hg diff --nodates

hg diff --nodates -r tip

echo foo > a
hg diff --nodates

hg diff -r ""
hg diff -r tip -r ""

true