From 63ad9ff720754e36a2b0299f2c857228f32b0c52 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20v=2E=20L=C3=B6wis?= Date: Sat, 12 Sep 2009 17:16:22 +0200 Subject: Implement isascii. --HG-- branch : distribute extra : rebase_source : 6805617a1673859320ae278cfbb6f7136d20a0a8 --- setuptools/command/easy_install.py | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'setuptools/command/easy_install.py') diff --git a/setuptools/command/easy_install.py b/setuptools/command/easy_install.py index 7ed467f0..9e1f8711 100755 --- a/setuptools/command/easy_install.py +++ b/setuptools/command/easy_install.py @@ -42,9 +42,21 @@ def samefile(p1,p2): if sys.version_info <= (3,): def _to_ascii(s): return s + def isascii(s): + try: + unicode(s, 'ascii') + return True + except UnicodeError: + return False else: def _to_ascii(s): return s.encode('ascii') + def isascii(s): + try: + s.encode('ascii') + return True + except UnicodeError: + return False class easy_install(Command): """Manage a download/build/install process""" @@ -1439,7 +1451,7 @@ def get_script_header(script_text, executable=sys_executable, wininst=False): else: executable = nt_quote_arg(executable) hdr = "#!%(executable)s%(options)s\n" % locals() - if unicode(hdr,'ascii','ignore').encode('ascii') != hdr: + if not isascii(hdr): # Non-ascii path to sys.executable, use -x to prevent warnings if options: if options.strip().startswith('-'): -- cgit v1.2.3