summaryrefslogtreecommitdiff
path: root/src/lib/ecore/efl_io_buffered_stream.c
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/lib/ecore/efl_io_buffered_stream.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/lib/ecore/efl_io_buffered_stream.c b/src/lib/ecore/efl_io_buffered_stream.c
index ce6411bc5d..ab26bf453e 100644
--- a/src/lib/ecore/efl_io_buffered_stream.c
+++ b/src/lib/ecore/efl_io_buffered_stream.c
@@ -192,6 +192,12 @@ _efl_io_buffered_stream_efl_io_closer_close(Eo *o, Efl_Io_Buffered_Stream_Data *
192 192
193 EINA_SAFETY_ON_TRUE_RETURN_VAL(pd->closed, EINVAL); 193 EINA_SAFETY_ON_TRUE_RETURN_VAL(pd->closed, EINVAL);
194 194
195 if (pd->outgoing)
196 {
197 efl_io_queue_eos_mark(pd->outgoing);
198 efl_io_copier_flush(pd->sender, EINA_FALSE, EINA_TRUE);
199 }
200
195 /* line delimiters may be holding a last chunk of data */ 201 /* line delimiters may be holding a last chunk of data */
196 if (pd->receiver) efl_io_copier_flush(pd->receiver, EINA_FALSE, EINA_TRUE); 202 if (pd->receiver) efl_io_copier_flush(pd->receiver, EINA_FALSE, EINA_TRUE);
197 203
@@ -561,7 +567,7 @@ _efl_io_buffered_stream_clear(Eo *o EINA_UNUSED, Efl_Io_Buffered_Stream_Data *pd
561EOLIAN static void 567EOLIAN static void
562_efl_io_buffered_stream_eos_mark(Eo *o, Efl_Io_Buffered_Stream_Data *pd) 568_efl_io_buffered_stream_eos_mark(Eo *o, Efl_Io_Buffered_Stream_Data *pd)
563{ 569{
564 if (!pd->incoming) return; 570 if (!pd->outgoing) return;
565 DBG("%p mark eos", o); 571 DBG("%p mark eos", o);
566 efl_io_queue_eos_mark(pd->outgoing); 572 efl_io_queue_eos_mark(pd->outgoing);
567} 573}