aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--degesch.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/degesch.c b/degesch.c
index e7310c9..f3ad894 100644
--- a/degesch.c
+++ b/degesch.c
@@ -197,6 +197,9 @@ input_set_prompt (struct input *self, char *prompt)
free (self->prompt);
self->prompt = prompt;
+ if (!self->active)
+ return;
+
// First reset the prompt to work around a bug in readline
rl_set_prompt ("");
if (self->prompt_shown)
@@ -294,6 +297,7 @@ input_stop (struct input *self)
// This is okay as long as we're not called from within readline
rl_callback_handler_remove ();
self->active = false;
+ self->prompt_shown = false;
}
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
@@ -591,6 +595,7 @@ input_stop (struct input *self)
el_end (self->editline);
self->editline = NULL;
self->active = false;
+ self->prompt_shown = false;
}
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -