raster pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=54b321d459b3f2a9050177da3f4e437b763a7bbe

commit 54b321d459b3f2a9050177da3f4e437b763a7bbe
Author: Carsten Haitzler (Rasterman) <ras...@rasterman.com>
Date:   Sat Jul 20 11:48:30 2019 +0100

    ecore - efl thread - move duplicate code into shared func to reduce cnp
    
    more copy & paste code - put into shared func.
---
 src/lib/ecore/efl_thread.c | 21 +++++++++++----------
 1 file changed, 11 insertions(+), 10 deletions(-)

diff --git a/src/lib/ecore/efl_thread.c b/src/lib/ecore/efl_thread.c
index 39329284ca..761796d219 100644
--- a/src/lib/ecore/efl_thread.c
+++ b/src/lib/ecore/efl_thread.c
@@ -872,6 +872,15 @@ _efl_thread_efl_io_closer_closed_get(const Eo *obj 
EINA_UNUSED, Efl_Thread_Data
    return EINA_FALSE;
 }
 
+static void
+_io_reader_read_fd_out_clear(Efl_Thread_Data *pd)
+{
+   close(pd->fd.out);
+   pd->fd.out = -1;
+   efl_del(pd->fd.out_handler);
+   pd->fd.out_handler = NULL;
+}
+
 EOLIAN static Eina_Error
 _efl_thread_efl_io_reader_read(Eo *obj, Efl_Thread_Data *pd, Eina_Rw_Slice 
*rw_slice)
 {
@@ -897,22 +906,14 @@ _efl_thread_efl_io_reader_read(Eo *obj, Efl_Thread_Data 
*pd, Eina_Rw_Slice *rw_s
      {
         efl_io_reader_can_read_set(obj, EINA_FALSE);
         efl_io_reader_eos_set(obj, EINA_TRUE);
-        close(pd->fd.out);
-        pd->fd.out = -1;
-        efl_del(pd->fd.out_handler);
-        pd->fd.out_handler = NULL;
+        _io_reader_read_fd_out_clear(pd);
         _thread_exit_eval(obj, pd);
         return EPIPE;
      }
    return 0;
 err:
    if ((pd->fd.out != -1) && (errno != EAGAIN))
-     {
-        close(pd->fd.out);
-        pd->fd.out = -1;
-        efl_del(pd->fd.out_handler);
-        pd->fd.out_handler = NULL;
-     }
+     _io_reader_read_fd_out_clear(pd);
    rw_slice->len = 0;
    rw_slice->mem = NULL;
    efl_io_reader_can_read_set(obj, EINA_FALSE);

-- 


Reply via email to