topicmap: add compatibility for branchcache that now uses self._entries stable
authorAnton Shestakov <av6@dwimlabs.net>
Wed, 27 Mar 2019 20:52:30 +0800
branchstable
changeset 4450 9b0cde5efbc9
parent 4449 4a00de50bb3b
child 4451 a019067fea9e
child 4459 d46360b8c0dc
topicmap: add compatibility for branchcache that now uses self._entries
hgext3rd/topic/topicmap.py
--- a/hgext3rd/topic/topicmap.py	Wed Mar 27 14:29:22 2019 +0530
+++ b/hgext3rd/topic/topicmap.py	Wed Mar 27 20:52:30 2019 +0800
@@ -9,6 +9,7 @@
     cmdutil,
     extensions,
     repoview,
+    util,
 )
 
 basefilter = set(['base', 'immutable'])
@@ -150,8 +151,13 @@
 
     def copy(self):
         """return an deep copy of the branchcache object"""
-        new = self.__class__(self, self.tipnode, self.tiprev, self.filteredhash,
-                             self._closednodes)
+        if util.safehasattr(self, '_entries'):
+            _entries = self._entries
+        else:
+            # hg <= 4.9 (624d6683c705, b137a6793c51)
+            _entries = self
+        new = self.__class__(_entries, self.tipnode, self.tiprev,
+                             self.filteredhash, self._closednodes)
         new.phaseshash = self.phaseshash
         return new