[lldbtests] Handle errors instead of crashing.
authorDavide Italiano <davide@freebsd.org>
Mon, 23 Oct 2017 23:17:53 +0000 (23:17 +0000)
committerDavide Italiano <davide@freebsd.org>
Mon, 23 Oct 2017 23:17:53 +0000 (23:17 +0000)
If you pass an invalid compiler/debugger path on the cmdline to `dotest.py`  this is what you get.

  Traceback (most recent call last):
  [...]
    File "dotest.py", line 7, in <module>
      lldbsuite.test.run_suite()
  [...]

And with the patch applied:

  /home/davide/work/build-lldb/bin/clandasfasg is not a valid path, exiting

Differential Revision:  https://reviews.llvm.org/D39199

llvm-svn: 316393

lldb/packages/Python/lldbsuite/test/dotest.py

index 7d739ac..91f1427 100644 (file)
@@ -50,7 +50,11 @@ from ..support import seven
 
 
 def is_exe(fpath):
-    """Returns true if fpath is an executable."""
+    """Returns true if fpath is an executable.
+       Exits with an error code if the specified path is invalid"""
+    if not os.path.exists(fpath):
+        print(fpath  + " is not a valid path, exiting")
+        sys.exit(-1)
     return os.path.isfile(fpath) and os.access(fpath, os.X_OK)