X-Git-Url: https://git.danieliu.xyz/?a=blobdiff_plain;f=st.c;h=6e34f1ef01d0fdb503922c8e2e2637980b963c5c;hb=a7922bd1d94ace6d14e40a27820e217cd6c4e632;hp=f8d2257a270e09aac49c45083e08ef62cd06c26d;hpb=ce3f4fc647be3ab28f934db9365445a56ebd85bf;p=st.git diff --git a/st.c b/st.c index f8d2257..6e34f1e 100644 --- a/st.c +++ b/st.c @@ -497,21 +497,21 @@ tdeletechar(int n) { return; } memmove(&term.line[term.c.y][dst], &term.line[term.c.y][src], size * sizeof(Glyph)); - tclearregion(term.col-size, term.c.y, term.col-1, term.c.y); + tclearregion(term.col-n, term.c.y, term.col-1, term.c.y); } void tinsertblank(int n) { int src = term.c.x; int dst = src + n; - int size = term.col - n - src; + int size = term.col - dst; if(dst >= term.col) { tclearregion(term.c.x, term.c.y, term.col-1, term.c.y); return; } memmove(&term.line[term.c.y][dst], &term.line[term.c.y][src], size * sizeof(Glyph)); - tclearregion(src, term.c.y, dst, term.c.y); + tclearregion(src, term.c.y, dst - 1, term.c.y); } void @@ -1173,7 +1173,7 @@ xcursor(int mode) { if(term.line[term.c.y][term.c.x].state & GLYPH_SET) g.c = term.line[term.c.y][term.c.x].c; - + /* remove the old cursor */ if(term.line[oldy][oldx].state & GLYPH_SET) xdraws(&term.line[oldy][oldx].c, term.line[oldy][oldx], oldx, oldy, 1);