]> code.ossystems Code Review - openembedded-core.git/commitdiff
terminal.bbclass: do not export PS1
authorAnders Darander <anders@chargestorm.se>
Fri, 10 Jan 2014 14:59:01 +0000 (15:59 +0100)
committerRobert Yang <liezhi.yang@windriver.com>
Sun, 26 Jan 2014 06:08:27 +0000 (14:08 +0800)
With a complex PS1 setup, PS1 might not have all characters correctly escaped
when terminal.bbclass writes the export. This caused the run.do_terminal.PID to
terminate, making it impossible to use the devshell.

As the spawned shell will parse e.g. .bashrc (or whatever rc-file is being
used), PS1 will be reset in the devshell.

(From OE-Core master rev: a5e6926cd409140d16391c72316da00ffbfe5429)

Signed-off-by: Anders Darander <anders@chargestorm.se>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
meta/classes/terminal.bbclass

index efbc4eb9ae73a656360a30eb93024422b8eb5d99..290366600b809232f253b6703e9aa8835478bc0a 100644 (file)
@@ -64,6 +64,10 @@ def oe_terminal(command, title, d):
             envdata.setVar(key, str(value))
             envdata.setVarFlag(key, 'export', 1)
 
+    # A complex PS1 might need more escaping of chars.
+    # Lets not export PS1 instead.
+    envdata.delVar("PS1")
+
     # Replace command with an executable wrapper script
     command = emit_terminal_func(command, envdata, d)