Flush chronyc output buffers.
The following is a patch to chronyc that causes it to flush the buffers to stderr and stdout after executing each command. This is needed if you are controling chronyc from a program (i.e. chronyc's input and output descriptors are pipes which are being written/read by another program) and you do not want to block waiting for chronyc response which is trapped in a buffer!
This commit is contained in:
parent
29223ea476
commit
91a91d1642
1 changed files with 7 additions and 2 deletions
9
client.c
9
client.c
|
@ -2319,7 +2319,11 @@ process_line(char *line)
|
||||||
/* Check for line being blank */
|
/* Check for line being blank */
|
||||||
p = line;
|
p = line;
|
||||||
while (*p && isspace((unsigned char)*p)) p++;
|
while (*p && isspace((unsigned char)*p)) p++;
|
||||||
if (!*p) return quit;
|
if (!*p) {
|
||||||
|
fflush(stderr);
|
||||||
|
fflush(stdout);
|
||||||
|
return quit;
|
||||||
|
};
|
||||||
|
|
||||||
if (!strncmp(p, "offline", 7)) {
|
if (!strncmp(p, "offline", 7)) {
|
||||||
do_normal_submit = process_cmd_offline(&tx_message, p+7);
|
do_normal_submit = process_cmd_offline(&tx_message, p+7);
|
||||||
|
@ -2480,7 +2484,8 @@ process_line(char *line)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
fflush(stderr);
|
||||||
|
fflush(stdout);
|
||||||
return quit;
|
return quit;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue