X-Git-Url: https://git.xinqibao.xyz/st.git/blobdiff_plain/d2937b05aed9cee8d6651cd806d31682a853c773..39ae1a4de5c471c8626c80ef1e961f0c83f5199d:/st.c?ds=sidebyside diff --git a/st.c b/st.c index c48132a..79bf1c8 100644 --- a/st.c +++ b/st.c @@ -944,7 +944,7 @@ getsel(void) { ptr = str = xmalloc(bufsize); /* append every set & selected glyph to the selection */ - for(y = sel.nb.y; y < sel.ne.y + 1; y++) { + for(y = sel.nb.y; y <= sel.ne.y; y++) { linelen = tlinelen(y); if(sel.type == SEL_RECTANGULAR) { @@ -2779,18 +2779,16 @@ tresize(int col, int row) { return; } - /* free unneeded rows */ - i = 0; + /* + * slide screen to keep cursor where we expect it - + * tscrollup would work here, but we can optimize to + * memmove because we're freeing the earlier lines + */ + for(i = 0; i < slide; i++) { + free(term.line[i]); + free(term.alt[i]); + } if(slide > 0) { - /* - * slide screen to keep cursor where we expect it - - * tscrollup would work here, but we can optimize to - * memmove because we're freeing the earlier lines - */ - for(/* i = 0 */; i < slide; i++) { - free(term.line[i]); - free(term.alt[i]); - } memmove(term.line, term.line + slide, row * sizeof(Line)); memmove(term.alt, term.alt + slide, row * sizeof(Line)); }