X-Git-Url: https://git.xinqibao.xyz/dwm.git/blobdiff_plain/b1669b5c48f71c9a7a919dbf09a1af527c62f69a..da2bbd371c522d63d737d43a127601a3fdbcb9d8:/util.c diff --git a/util.c b/util.c index 76ba5ab..3f41b3c 100644 --- a/util.c +++ b/util.c @@ -126,15 +126,16 @@ pipe_spawn(char *buf, unsigned int len, Display *dpy, char *argv[]) perror(" failed"); } else { - n = 0; + l = n = 0; close(pfd[1]); - while(l > n) { + while(n < len) { if((l = read(pfd[0], buf + n, len - n)) < 1) break; n += l; } + while(l > n); close(pfd[0]); - buf[n - 1] = 0; + buf[n < len ? n : len - 1] = 0; } wait(0); }