raster pushed a commit to branch master.

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

commit fd6d9da8fac02b27f771876e4b540cd940f12181
Author: Carsten Haitzler (Rasterman) <[email protected]>
Date:   Mon Mar 26 18:18:30 2018 +0900

    ecore ipc - fix flush to not lose messages
    
    it wasn't looking at the copier queue "todo" at all thus skipping it
    on flush. this will fix flushing of ecore ipc message buffers. this
    happens to also now fix terminology's "one process" mode.
    
    @fix
---
 src/lib/ecore_ipc/ecore_ipc.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/lib/ecore_ipc/ecore_ipc.c b/src/lib/ecore_ipc/ecore_ipc.c
index c0fcd8be63..7336d83ba8 100644
--- a/src/lib/ecore_ipc/ecore_ipc.c
+++ b/src/lib/ecore_ipc/ecore_ipc.c
@@ -1078,7 +1078,8 @@ ecore_ipc_server_flush(Ecore_Ipc_Server *svr)
         while (!efl_io_closer_closed_get(svr->dialer.dialer) &&
                !efl_net_dialer_connected_get(svr->dialer.dialer))
           ecore_main_loop_iterate();
-        while (efl_io_queue_usage_get(svr->dialer.input) > 0)
+        while ((efl_io_queue_usage_get(svr->dialer.input) > 0) ||
+               (efl_io_copier_pending_size_get(svr->dialer.send_copier) > 0))
           efl_io_copier_flush(svr->dialer.send_copier, EINA_TRUE, EINA_TRUE);
         return;
      }

-- 


Reply via email to