Make kdmctl reliable

Backport of KDE4 SVN revision 1196803


git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdebase@1247445 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
v3.5.13-sru
tpearson 13 years ago
parent d54ab55951
commit 90adec6981

@ -93,15 +93,13 @@ exe( int fd, const char *in, int len )
fprintf( stderr, "Cannot send command\n" ); fprintf( stderr, "Cannot send command\n" );
return 1; return 1;
} }
do {
if ((len = read(fd, buf, sizeof(buf))) <= 0) { if ((len = read(fd, buf, sizeof(buf))) <= 0) {
fprintf(stderr, "Cannot receive reply\n"); fprintf(stderr, "Cannot receive reply\n");
return 1; return 1;
} }
if (len == sizeof(buf) && buf[sizeof(buf) - 1] != '\n')
fprintf( stderr, "Warning: reply is too long\n" );
fwrite(buf, 1, len, stdout); fwrite(buf, 1, len, stdout);
if (len == sizeof(buf) && buf[sizeof(buf) - 1] != '\n') } while (buf[len - 1] != '\n');
puts( "[...]" );
return 0; return 0;
} }

Loading…
Cancel
Save