Michał Górny avatar Michał Górny committed 704fe5d

Report clear error when EPYTHON-variant does not exist.

Comments (0)

Files changed (1)

src/python-exec.in

 __file__ = self
 sys.argv[0] = self
 
-kwargs = {}
-if sys.version_info[0] >= 3:
-	import tokenize
+try:
+	kwargs = {}
+	if sys.version_info[0] >= 3:
+		import tokenize
 
-	# need to provide encoding
-	with open(self, 'rb') as f:
-		kwargs['encoding'] = tokenize.detect_encoding(f.readline)[0]
+		# need to provide encoding
+		with open(self, 'rb') as f:
+			kwargs['encoding'] = tokenize.detect_encoding(f.readline)[0]
 
-with open(self, 'r', **kwargs) as f:
-	data = f.read()
+	with open(self, 'r', **kwargs) as f:
+		data = f.read()
+except IOError:
+	sys.stderr.write('This Python implementation (%s) is not supported by the script.\n'
+			% epython)
+	sys.exit(127)
 
 exec(data)
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.