# HG changeset patch # User Gregory Szorc # Date 2016-08-23 03:30:37 # Node ID 79add5a4e85748a26979d8ef2b97eaaa96ea834e # Parent a22b3de3b65a23bd2bfbacd658207c0f8474d64d util: properly implement lrucachedict.get() Before, it was returning the raw _lrucachenode instance instead of its value. diff --git a/mercurial/util.py b/mercurial/util.py --- a/mercurial/util.py +++ b/mercurial/util.py @@ -651,7 +651,7 @@ class lrucachedict(object): def get(self, k, default=None): try: - return self._cache[k] + return self._cache[k].value except KeyError: return default diff --git a/tests/test-lrucachedict.py b/tests/test-lrucachedict.py --- a/tests/test-lrucachedict.py +++ b/tests/test-lrucachedict.py @@ -25,6 +25,9 @@ def test_lrucachedict(): d['e'] = 've' printifpresent(d, ['a', 'b', 'c', 'd', 'e']) + assert d.get('a') is None + assert d.get('e') == 've' + # touch entries in some order (get or set). d['e'] d['c'] = 'vc2'