瀏覽代碼

runfvp: ignore setpgid errors when spawned

When runfvp is spawned from an other process (for example except), it is
throwing a permission error.
To solve the problem, surround the call to setpgid with a try/except and
ignore the permission errors.

Signed-off-by: Bertrand Marquis <bertrand.marquis@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Bertrand Marquis 2 年之前
父節點
當前提交
a25192f51d
共有 1 個文件被更改,包括 6 次插入1 次删除
  1. 6 1
      scripts/runfvp

+ 6 - 1
scripts/runfvp

@@ -270,7 +270,12 @@ if __name__ == "__main__":
     try:
         # Set the process group so that it's possible to kill runfvp and
         # everything it spawns easily.
-        os.setpgid(0, 0)
+        # Ignore permission errors happening when spawned from an other process
+        # for example run from except
+        try:
+            os.setpgid(0, 0)
+        except PermissionError:
+            pass
         if sys.stdin.isatty():
             signal.signal(signal.SIGTTOU, signal.SIG_IGN)
             os.tcsetpgrp(sys.stdin.fileno(), os.getpgrp())