Flush pending data after sending ecore_ipc message 90/51190/1
authorLi Zhang <li2012.zhang@samsung.com>
Wed, 4 Nov 2015 09:54:36 +0000 (17:54 +0800)
committerLi Zhang <li2012.zhang@samsung.com>
Thu, 5 Nov 2015 06:56:15 +0000 (14:56 +0800)
Change-Id: I467614cb2b8f33b62b036cb0289aca9a2b92e9a1
Signed-off-by: Li Zhang <li2012.zhang@samsung.com>
ism/src/ise_preexec.cpp
ism/src/scim.cpp

index 34d7509..da458a8 100644 (file)
@@ -113,7 +113,7 @@ void send_message_to_broker (const char *message)
 
     if (server && message) {
         ecore_ipc_server_send (server, 0, 0, 0, 0, 0, message, strlen (message));
-
+        ecore_ipc_server_flush (server);
         LOGD ("send message : %s\n", message);
 
         /* We need a ecore loop for sending the ipc message */
index 0a8f9b3..d42224b 100644 (file)
@@ -200,6 +200,7 @@ static Eina_Bool handler_client_data (void *data, int ev_type, void *ev)
     if (ecore_ipc_client_send (e->client, 0, 0, 0, 0, 0, message, strlen (message)) == 0) {
         LOGW ("ecore_ipc_client_send FAILED!!");
     }
+    ecore_ipc_client_flush (e->client);
 
     char buffer[_POSIX_PATH_MAX + 1] = {0};
     strncpy (buffer, (char*)(e->data), (e->size > _POSIX_PATH_MAX) ? _POSIX_PATH_MAX : e->size);