summaryrefslogtreecommitdiff
path: root/Src
diff options
context:
space:
mode:
Diffstat (limited to 'Src')
-rw-r--r--Src/Zle/zle_main.c1
-rw-r--r--Src/Zle/zle_params.c10
2 files changed, 11 insertions, 0 deletions
diff --git a/Src/Zle/zle_main.c b/Src/Zle/zle_main.c
index 9332b509d..1ec0171bb 100644
--- a/Src/Zle/zle_main.c
+++ b/Src/Zle/zle_main.c
@@ -752,6 +752,7 @@ zleread(char *lp, char *rp, int flags)
pmpt_attr = txtchange;
rpromptbuf = promptexpand(rp, 1, NULL, NULL);
rpmpt_attr = txtchange;
+ free_prepostdisplay();
zlereadflags = flags;
histline = curhist;
diff --git a/Src/Zle/zle_params.c b/Src/Zle/zle_params.c
index ef8a98139..1987974d2 100644
--- a/Src/Zle/zle_params.c
+++ b/Src/Zle/zle_params.c
@@ -516,3 +516,13 @@ get_postdisplay(Param pm)
{
return get_prepost(postdisplay, postdisplaylen);
}
+
+/**/
+void
+free_prepostdisplay(void)
+{
+ if (predisplaylen)
+ set_prepost(&predisplay, &predisplaylen, NULL);
+ if (postdisplaylen)
+ set_prepost(&postdisplay, &postdisplaylen, NULL);
+}