summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--source-builder/sb/check.py30
1 files changed, 17 insertions, 13 deletions
diff --git a/source-builder/sb/check.py b/source-builder/sb/check.py
index 9e4e953..be808ea 100644
--- a/source-builder/sb/check.py
+++ b/source-builder/sb/check.py
@@ -104,20 +104,24 @@ def path_check(opts, silent = False):
if 'PATH' in os.environ:
paths = os.environ['PATH'].split(os.pathsep)
for p in paths:
- if len(p.strip()) == 0:
+ try:
+ if len(p.strip()) == 0:
+ if not silent:
+ log.notice('error: environment PATH contains an empty path')
+ return False
+ elif not options.host_windows and (p.strip() == '.' or p.strip() == '..'):
+ if not silent:
+ log.notice('error: environment PATH invalid path: %s' % (p))
+ return False
+ elif not path.exists(p):
+ if not silent and opts.warn_all():
+ log.notice('warning: environment PATH not found: %s' % (p))
+ elif not path.isdir(p):
+ if not silent and opts.warn_all():
+ log.notice('warning: environment PATH not a directory: %s' % (p))
+ except Exception as e:
if not silent:
- log.notice('error: environment PATH contains an empty path')
- return False
- elif not options.host_windows and (p.strip() == '.' or p.strip() == '..'):
- if not silent:
- log.notice('error: environment PATH invalid path: %s' % (p))
- return False
- elif not path.exists(p):
- if not silent and opts.warn_all():
- log.notice('warning: environment PATH not found: %s' % (p))
- elif not path.isdir(p):
- if not silent and opts.warn_all():
- log.notice('warning: environment PATH not a directory: %s' % (p))
+ log.notice('warning: environment PATH suspicious path: %s' % (e))
return True