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.
--- a/hgext/blackbox.py Mon Mar 14 23:28:14 2016 +0000
+++ b/hgext/blackbox.py Tue Mar 15 10:36:02 2016 +0000
@@ -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'):