aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMing Liu <liu.ming50@gmail.com>2017-11-20 10:35:57 -0800
committerArmin Kuster <akuster808@gmail.com>2018-02-23 08:06:47 -0800
commit4c36c5110b822eeac06b2b336917ba4d8b54a247 (patch)
tree4a3a838d88da864a21220fc5c3e927aa1cbeaec5
parente2561de16c19e862b825d5a2feb3c6781b0869c5 (diff)
downloadopenembedded-core-contrib-stable/morty-next.tar.gz
openembedded-core-contrib-stable/morty-next.tar.bz2
openembedded-core-contrib-stable/morty-next.zip
lib/oe/terminal.py: use an absolute path to execute oe-gnome-terminal-phonehomestable/morty-next
A flaw was found on my Ubuntu 14.04.5 LTS, on which that gnome-terminal is the default terminal, when I run any of the tasks: bitbake busybox -c menuconfig/devshell/devpyshell bitbake virtual/kernel -c menuconfig/devshell/devpyshell I got a error as follows: "Failed to execute child process "oe-gnome-terminal-phonehome" (No such file or directory)" Seems the environment of the process calling Popen is not passed to the child process, this behaviour is a known issue in Python bug tracker: http://bugs.python.org/issue8557 It could be fixed by using an absolute path instead per test. Signed-off-by: Ming Liu <liu.ming50@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> (cherry picked from commit 2117c148ef07d84bc605768e3b3671b0126b9337) Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Armin Kuster <akuster808@gmail.com>
-rw-r--r--meta/lib/oe/terminal.py3
1 files changed, 1 insertions, 2 deletions
diff --git a/meta/lib/oe/terminal.py b/meta/lib/oe/terminal.py
index 3c8ef59a45..65486bfd29 100644
--- a/meta/lib/oe/terminal.py
+++ b/meta/lib/oe/terminal.py
@@ -67,7 +67,7 @@ class Gnome(XTerminal):
import tempfile
pidfile = tempfile.NamedTemporaryFile(delete = False).name
try:
- sh_cmd = "oe-gnome-terminal-phonehome " + pidfile + " " + sh_cmd
+ sh_cmd = bb.utils.which(os.getenv('PATH'), "oe-gnome-terminal-phonehome") + " " + pidfile + " " + sh_cmd
XTerminal.__init__(self, sh_cmd, title, env, d)
while os.stat(pidfile).st_size <= 0:
continue
@@ -231,7 +231,6 @@ def spawn(name, sh_cmd, title=None, env=None, d=None):
output = output.decode("utf-8")
if pipe.returncode != 0:
raise ExecutionError(sh_cmd, pipe.returncode, output)
-
def check_tmux_pane_size(tmux):
import subprocess as sub
# On older tmux versions (<1.9), return false. The reason