summaryrefslogtreecommitdiff
path: root/src/sockutil.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/sockutil.c')
-rw-r--r--src/sockutil.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/sockutil.c b/src/sockutil.c
index d5f390fbf..2308dd528 100644
--- a/src/sockutil.c
+++ b/src/sockutil.c
@@ -415,6 +415,8 @@ char *sgets(char *buf, int len, ano_socket_t s)
fd_set fds;
char *ptr = buf;
+ flush_write_buffer(0);
+
if (len == 0)
return NULL;
FD_SET(s, &fds);
@@ -424,6 +426,7 @@ char *sgets(char *buf, int len, ano_socket_t s)
(c = select(s + 1, &fds, NULL, NULL, &tv)) < 0) {
if (ano_sockgeterr() != EINTR)
break;
+ flush_write_buffer(0);
}
if (read_buffer_len() == 0 && c == 0)
return (char *) -1;