summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/estream.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/estream.c b/src/estream.c
index a1cc62e..8ad664e 100644
--- a/src/estream.c
+++ b/src/estream.c
@@ -1930,14 +1930,15 @@ flush_stream (estream_t stream)
stream->intern->offset += stream->data_offset;
stream->data_offset = 0;
stream->data_flushed = 0;
-
- /* Propagate flush event. */
- (*func_write) (stream->intern->cookie, NULL, 0);
}
}
else
err = 0;
+ /* Always propagate flush event in case gpgrt_fflush was called
+ * explictly to do flush buffers in caller's cookie functions. */
+ (*func_write) (stream->intern->cookie, NULL, 0);
+
out:
if (err && errno != EAGAIN)