diff -r 664e24207728 -r 9fb85668ee15 mercurial/utils/resourceutil.py --- a/mercurial/utils/resourceutil.py Thu Nov 14 11:52:22 2019 -0800 +++ b/mercurial/utils/resourceutil.py Thu Nov 14 12:33:10 2019 -0800 @@ -10,6 +10,7 @@ from __future__ import absolute_import import imp +import os import sys from .. import pycompat @@ -26,3 +27,11 @@ or pycompat.safehasattr(sys, "importers") # new py2exe or imp.is_frozen("__main__") # old py2exe ) # tools/freeze + + +# the location of data files matching the source code +if mainfrozen() and getattr(sys, 'frozen', None) != 'macosx_app': + # executable version (py2exe) doesn't support __file__ + datapath = os.path.dirname(pycompat.sysexecutable) +else: + datapath = os.path.dirname(os.path.dirname(pycompat.fsencode(__file__)))