summaryrefslogtreecommitdiff
path: root/Src/Zle/zle_refresh.c
diff options
context:
space:
mode:
Diffstat (limited to 'Src/Zle/zle_refresh.c')
-rw-r--r--Src/Zle/zle_refresh.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/Src/Zle/zle_refresh.c b/Src/Zle/zle_refresh.c
index 89bf30d9a..b9e5723c9 100644
--- a/Src/Zle/zle_refresh.c
+++ b/Src/Zle/zle_refresh.c
@@ -1387,11 +1387,15 @@ zrefresh(void)
more_end = 1;
if (statusline) {
+ int outll, outsz;
+ ZLE_STRING_T outputline =
+ stringaszleline(statusline, 0, &outll, &outsz, NULL);
+
rpms.tosln = rpms.ln + 1;
nbuf[rpms.ln][winw + 1] = zr_zr; /* text not wrapped */
snextline(&rpms);
- u = statusline;
- for (; u < statusline + statusll; u++) {
+ u = outputline;
+ for (; u < outputline + outll; u++) {
#ifdef MULTIBYTE_SUPPORT
if (iswprint(*u)) {
int width = wcwidth(*u);
@@ -1449,6 +1453,7 @@ zrefresh(void)
*/
snextline(&rpms);
}
+ zfree(outputline, outsz);
}
*rpms.s = zr_zr;