diff options
Diffstat (limited to 'degesch.c')
-rw-r--r-- | degesch.c | 5 |
1 files changed, 5 insertions, 0 deletions
@@ -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; } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |