STREscape: don't trim prematurely - st - simple terminal
HTML git clone git://git.suckless.org/st
DIR Log
DIR Files
DIR Refs
DIR README
DIR LICENSE
---
DIR commit 7ceb3d1f72eabfa678e5cfae176c57630ad98c43
DIR parent ea4d933ed9d8ce16699c84892a29e070c70b2eb9
HTML Author: Avi Halachmi (:avih) <avihpit@yahoo.com>
Date: Wed, 16 Oct 2019 12:19:49 +0300
STREscape: don't trim prematurely
STRescape holds strings in escape sequences such as OSC and DCS, and
its buffer is 512 bytes.
If the input is too big then trailing chars are ignored, but the test
was off-by-1 such that it took 510 chars instead of 511 (before a
terminating NULL is added).
Now the full size can be utilized.
Diffstat:
M st.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
---
DIR diff --git a/st.c b/st.c
@@ -2330,7 +2330,7 @@ tputc(Rune u)
if (term.esc&ESC_DCS && strescseq.len == 0 && u == 'q')
term.mode |= MODE_SIXEL;
- if (strescseq.len+len >= sizeof(strescseq.buf)-1) {
+ if (strescseq.len+len >= sizeof(strescseq.buf)) {
/*
* Here is a bug in terminals. If the user never sends
* some code to stop the str or esc command, then st