diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | Src/Zle/zle_utils.c | 6 |
2 files changed, 8 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog index ddee8700e..628fdcc63 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2023-01-11 Oliver Kiddle <opk@zsh.org> + + * 51295: Src/Zle/zle_utils.c: where the end of a region coincides + with the end of PREDISPLAY, don't extend it to include new text + 2023-01-10 Oliver Kiddle <opk@zsh.org> * 51292: Src/Zle/zle_utils.c: fix dynamic updates of diff --git a/Src/Zle/zle_utils.c b/Src/Zle/zle_utils.c index 45a82dd5e..9ce91049c 100644 --- a/Src/Zle/zle_utils.c +++ b/Src/Zle/zle_utils.c @@ -580,7 +580,7 @@ struct zle_region; struct zle_region { struct zle_region *next; /* Entries of region_highlight, as needed */ - int atr; + zattr atr; int start; int end; int flags; @@ -799,7 +799,7 @@ spaceinline(int ct) if (rhp->start_meta - sub >= zlemetacs) { rhp->start_meta += ct; } - if (rhp->end_meta - sub >= zlemetacs) { + if (rhp->end_meta - sub >= zlemetacs && (!predisplaylen || zlecs)) { rhp->end_meta += ct; } } @@ -827,7 +827,7 @@ spaceinline(int ct) if (rhp->start - sub >= zlecs) { rhp->start += ct; } - if (rhp->end - sub >= zlecs) { + if (rhp->end - sub >= zlecs && (!predisplaylen || zlecs)) { rhp->end += ct; } } |