X-Git-Url: https://git.xinqibao.xyz/st.git/blobdiff_plain/5d2d9d540d84761cf11648ea42a6413001a5d7b9..2bef36ab81c356b106f00221038b743819cd20bd:/st.c diff --git a/st.c b/st.c index bd8b815..4d4f115 100644 --- a/st.c +++ b/st.c @@ -1135,10 +1135,10 @@ selnotify(XEvent *e) *repl++ = '\r'; } - if (IS_SET(MODE_BRCKTPASTE)) + if (IS_SET(MODE_BRCKTPASTE) && ofs == 0) ttywrite("\033[200~", 6); ttysend((char *)data, nitems * format / 8); - if (IS_SET(MODE_BRCKTPASTE)) + if (IS_SET(MODE_BRCKTPASTE) && rem == 0) ttywrite("\033[201~", 6); XFree(data); /* number of 32-bit chunks returned */ @@ -1430,8 +1430,7 @@ ttynew(void) if (opt_line) { if ((cmdfd = open(opt_line, O_RDWR)) < 0) die("open line failed: %s\n", strerror(errno)); - close(0); - dup(cmdfd); + dup2(cmdfd, 0); stty(); return; } @@ -3856,10 +3855,10 @@ xdrawcursor(void) case 1: /* Blinking Block (Default) */ case 2: /* Steady Block */ if (IS_SET(MODE_REVERSE)) { - g.mode |= ATTR_REVERSE; - g.fg = defaultcs; - g.bg = defaultfg; - } + g.mode |= ATTR_REVERSE; + g.fg = defaultcs; + g.bg = defaultfg; + } g.mode |= term.line[term.c.y][curx].mode & ATTR_WIDE; xdrawglyph(g, term.c.x, term.c.y);