diff options
| author | Stefan Pluecken <stefan.pluecken@multimedia-labs.de> | 2010-03-08 17:25:37 +0100 |
|---|---|---|
| committer | Stefan Pluecken <stefan.pluecken@multimedia-labs.de> | 2010-03-12 23:46:35 +0100 |
| commit | a529e6282d8e84817462dbb4be14adb4dfd6ee84 (patch) | |
| tree | 681450bfa2c81032f30ea68abeb7d968775c1146 /lib/python/Components/Task.py | |
| parent | a3260f88e01e3e91229ac241d0cd5648f2a045f3 (diff) | |
| download | enigma2-a529e6282d8e84817462dbb4be14adb4dfd6ee84.tar.gz enigma2-a529e6282d8e84817462dbb4be14adb4dfd6ee84.zip | |
refs bug #429
- allow absolute path names in Task.py but print a warning
- search in task.cwd as well
Diffstat (limited to 'lib/python/Components/Task.py')
| -rw-r--r-- | lib/python/Components/Task.py | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/lib/python/Components/Task.py b/lib/python/Components/Task.py index 86bd233e..a1e04bce 100644 --- a/lib/python/Components/Task.py +++ b/lib/python/Components/Task.py @@ -371,12 +371,18 @@ class ToolExistsPrecondition(Condition): def check(self, task): import os - self.realpath = task.cmd - path = os.environ.get('PATH', '').split(os.pathsep) - absolutes = filter(lambda file: os.access(file, os.X_OK), map(lambda directory, file = task.cmd: os.path.join(directory, file), path)) - if len(absolutes) > 0: - self.realpath = task.cmd[0] - return True + if task.cmd[0]=='/': + self.realpath = task.cmd + print "[Task.py][ToolExistsPrecondition] WARNING: usage of absolute paths for tasks should be avoided!" + return os.access(self.realpath, os.X_OK) + else: + self.realpath = task.cmd + path = os.environ.get('PATH', '').split(os.pathsep) + path.append(task.cwd + '/') + absolutes = filter(lambda file: os.access(file, os.X_OK), map(lambda directory, file = task.cmd: os.path.join(directory, file), path)) + if len(absolutes) > 0: + self.realpath = task.cmd[0] + return True return False def getErrorMessage(self, task): |
