[OE-core] [PATCH 1/1] terminal.bbclass: do not export PS1

Anders Darander anders at chargestorm.se
Fri Jan 10 14:59:01 UTC 2014


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.

Signed-off-by: Anders Darander <anders at chargestorm.se>
---
 meta/classes/terminal.bbclass | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/meta/classes/terminal.bbclass b/meta/classes/terminal.bbclass
index 774f055..e577c6d 100644
--- a/meta/classes/terminal.bbclass
+++ b/meta/classes/terminal.bbclass
@@ -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)
 
-- 
1.8.5.2




More information about the Openembedded-core mailing list