X-Git-Url: https://jasonwoof.com/gitweb/?a=blobdiff_plain;f=st.c;h=3cd78310a5985d04386099d255c1ef3de54f9311;hb=35421371ca150b6bd0fd1330e7b30a99029dbce1;hp=e19cefd949c60886de515b4fad18b09b2232fa52;hpb=ee3fbeb6c8c354cf4db226a5b1583c531ea37af4;p=st.git diff --git a/st.c b/st.c index e19cefd..3cd7831 100644 --- a/st.c +++ b/st.c @@ -678,7 +678,7 @@ bpress(XEvent *e) { void selcopy(void) { - char *str, *ptr, *p; + char *str, *ptr; int x, y, bufsize, is_selected = 0, size; Glyph *gp; @@ -693,11 +693,12 @@ selcopy(void) { for(x = 0; x < term.col; x++) { gp = &term.line[y][x]; - if(!(is_selected = selected(x, y))) + if(!(is_selected = selected(x, y)) + || !(gp->state & GLYPH_SET)) { continue; - p = (gp->state & GLYPH_SET) ? gp->c : " "; - size = utf8size(p); - memcpy(ptr, p, size); + } + size = utf8size(gp->c); + memcpy(ptr, gp->c, size); ptr += size; } /* \n at the end of every selected line except for the last one */