summary refs log tree commit diff
path: root/bin/1sh/parser.c
diff options
context:
space:
mode:
Diffstat (limited to 'bin/1sh/parser.c')
-rw-r--r--bin/1sh/parser.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/bin/1sh/parser.c b/bin/1sh/parser.c
index b92b9462..080b84e7 100644
--- a/bin/1sh/parser.c
+++ b/bin/1sh/parser.c
@@ -129,6 +129,7 @@ static void consumetoken(int);
 static void synexpect(int) __dead2;
 static void synerror(const char *) __dead2;
 static void setprompt(int);
+static char *expandprompt(const char *);
 static int pgetc_linecont(void);
 
 
@@ -1937,6 +1938,11 @@ setprompt(int which)
 	if (which == 0)
 		return;
 
+	if (which == 1 && *ps0val()) {
+		out2str(expandprompt(ps0val()));
+		flushout(out2);
+	}
+
 #ifndef NO_HISTORY
 	if (!el)
 #endif