D7452: debugextensions: gracefully handle missing __file__ attributes
mharbison72 (Matt Harbison)
phabricator at mercurial-scm.org
Sun Nov 17 12:54:33 EST 2019
mharbison72 updated this revision to Diff 18205.
REPOSITORY
rHG Mercurial
CHANGES SINCE LAST UPDATE
https://phab.mercurial-scm.org/D7452?vs=18203&id=18205
CHANGES SINCE LAST ACTION
https://phab.mercurial-scm.org/D7452/new/
REVISION DETAIL
https://phab.mercurial-scm.org/D7452
AFFECTED FILES
mercurial/debugcommands.py
CHANGE DETAILS
diff --git a/mercurial/debugcommands.py b/mercurial/debugcommands.py
--- a/mercurial/debugcommands.py
+++ b/mercurial/debugcommands.py
@@ -1029,7 +1029,12 @@
fm = ui.formatter(b'debugextensions', opts)
for extname, extmod in sorted(exts, key=operator.itemgetter(0)):
isinternal = extensions.ismoduleinternal(extmod)
- extsource = pycompat.fsencode(extmod.__file__)
+ extsource = None
+
+ if util.safehasattr(extmod, '__file__'):
+ extsource = pycompat.fsencode(extmod.__file__)
+ elif getattr(sys, 'oxidized', False):
+ extsource = pycompat.sysexecutable
if isinternal:
exttestedwith = [] # never expose magic string to users
else:
To: mharbison72, #hg-reviewers
Cc: mercurial-devel
More information about the Mercurial-devel
mailing list