[PATCH] blackbox: do not assume self._bb{vfs, repo, fp} are set in blackboxui.__init__
Jun Wu
quark at fb.com
Tue Mar 15 10:36:59 UTC 2016
# HG changeset patch
# User Jun Wu <quark at fb.com>
# Date 1458038162 0
# Tue Mar 15 10:36:02 2016 +0000
# Node ID a2a3a40aa29a33d6634170bbd5a6b6b8d042c9bf
# Parent b22ab2690f3170dc5ef3a807d8c44af6fee862a9
blackbox: do not assume self._bb{vfs,repo,fp} are set in blackboxui.__init__
It's possible for the blackboxui code to do a "del self._bbvfs", then ui.copy()
or similar attempt will fail. It will also fail when constructing a blackboxui
from a non-blackbox ui.
This patch fixes the issue by not assuming any _bb* attr is set.
diff --git a/hgext/blackbox.py b/hgext/blackbox.py
--- a/hgext/blackbox.py
+++ b/hgext/blackbox.py
@@ -80,10 +80,10 @@
if src is None:
self._partialinit()
else:
- self._bbfp = src._bbfp
+ self._bbfp = getattr(src, '_bbfp', None)
self._bbinlog = False
- self._bbrepo = src._bbrepo
- self._bbvfs = src._bbvfs
+ self._bbrepo = getattr(src, '_bbrepo', None)
+ self._bbvfs = getattr(src, '_bbvfs', None)
def _partialinit(self):
if util.safehasattr(self, '_bbvfs'):
More information about the Mercurial-devel
mailing list