equal
deleted
inserted
replaced
124 execvp(argv[0], argv); |
124 execvp(argv[0], argv); |
125 fprintf(stderr, "gridwm: execvp %s", argv[0]); |
125 fprintf(stderr, "gridwm: execvp %s", argv[0]); |
126 perror(" failed"); |
126 perror(" failed"); |
127 } |
127 } |
128 else { |
128 else { |
129 n = 0; |
129 l = n = 0; |
130 close(pfd[1]); |
130 close(pfd[1]); |
131 while(l > n) { |
131 while(n < len) { |
132 if((l = read(pfd[0], buf + n, len - n)) < 1) |
132 if((l = read(pfd[0], buf + n, len - n)) < 1) |
133 break; |
133 break; |
134 n += l; |
134 n += l; |
135 } |
135 } |
|
136 while(l > n); |
136 close(pfd[0]); |
137 close(pfd[0]); |
137 buf[n < len ? n : len - 1] = 0; |
138 buf[n < len ? n : len - 1] = 0; |
138 } |
139 } |
139 wait(0); |
140 wait(0); |
140 } |
141 } |