tasn pushed a commit to branch master.

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

commit 98281cc523b3be76369bedabebcc42972aeabd7a
Author: Tom Hacohen <t...@stosb.com>
Date:   Wed Aug 27 15:46:31 2014 +0100

    Ecore con: Fix compilation on windows.
---
 src/lib/ecore_con/ecore_con_ares.c        | 15 +++++----
 src/lib/ecore_con/ecore_con_local_win32.c | 51 +++++++++++++++++--------------
 2 files changed, 37 insertions(+), 29 deletions(-)

diff --git a/src/lib/ecore_con/ecore_con_ares.c 
b/src/lib/ecore_con/ecore_con_ares.c
index 9988b21..6276183 100644
--- a/src/lib/ecore_con/ecore_con_ares.c
+++ b/src/lib/ecore_con/ecore_con_ares.c
@@ -284,11 +284,12 @@ _ecore_con_info_ares_getnameinfo(Ecore_Con_CAres *arg,
 }
 
 EAPI int
-ecore_con_info_get(Ecore_Con_Server *svr,
+ecore_con_info_get(Ecore_Con_Server *obj,
                    Ecore_Con_Info_Cb done_cb,
                    void *data,
                    struct addrinfo *hints)
 {
+   Ecore_Con_Server_Data *svr = eo_data_scope_get(obj, ECORE_CON_SERVER_CLASS);
    Ecore_Con_CAres *cares;
 #ifdef HAVE_IPV6
    int ai_family = AF_INET6;
@@ -300,7 +301,7 @@ ecore_con_info_get(Ecore_Con_Server *svr,
    if (!cares)
      return 0;
 
-   cares->svr = svr;
+   cares->svr = obj;
    cares->done_cb = done_cb;
    cares->data = data;
 
@@ -445,6 +446,8 @@ _ecore_con_info_ares_host_cb(Ecore_Con_CAres *arg,
              goto on_error;
           }
 
+        Ecore_Con_Server_Data *svr = eo_data_scope_get(arg->svr, 
ECORE_CON_SERVER_CLASS);
+
         switch (hostent->h_addrtype)
           {
            case AF_INET:
@@ -458,7 +461,7 @@ _ecore_con_info_ares_host_cb(Ecore_Con_CAres *arg,
                 goto on_mem_error;
 
               addri->sin_family = AF_INET;
-              addri->sin_port = htons(arg->svr->ecs ? arg->svr->ecs->port : 
arg->svr->port);
+              addri->sin_port = htons(svr->ecs ? svr->ecs->port : svr->port);
 
               memcpy(&addri->sin_addr.s_addr,
                      hostent->h_addr_list[0], sizeof(struct in_addr));
@@ -479,7 +482,7 @@ _ecore_con_info_ares_host_cb(Ecore_Con_CAres *arg,
                 goto on_mem_error;
 
               addri6->sin6_family = AF_INET6;
-              addri6->sin6_port = htons(arg->svr->ecs ? arg->svr->ecs->port : 
arg->svr->port);
+              addri6->sin6_port = htons(svr->ecs ? svr->ecs->port : svr->port);
               addri6->sin6_flowinfo = 0;
               addri6->sin6_scope_id = 0;
 
@@ -519,7 +522,7 @@ _ecore_con_info_ares_host_cb(Ecore_Con_CAres *arg,
                     goto on_mem_error;
 
                   addri6->sin6_family = AF_INET6;
-                  addri6->sin6_port = htons(arg->svr->ecs ? 
arg->svr->ecs->port : arg->svr->port);
+                  addri6->sin6_port = htons(svr->ecs ? svr->ecs->port : 
svr->port);
                   addri6->sin6_flowinfo = 0;
                   addri6->sin6_scope_id = 0;
 
@@ -540,7 +543,7 @@ _ecore_con_info_ares_host_cb(Ecore_Con_CAres *arg,
                   goto on_mem_error;
 
                 addri->sin_family = AF_INET;
-                addri->sin_port = htons(arg->svr->ecs ? arg->svr->ecs->port : 
arg->svr->port);
+                addri->sin_port = htons(svr->ecs ? svr->ecs->port : svr->port);
 
                 memcpy(&addri->sin_addr.s_addr,
                        &arg->addr.v4, sizeof(struct in_addr));
diff --git a/src/lib/ecore_con/ecore_con_local_win32.c 
b/src/lib/ecore_con/ecore_con_local_win32.c
index 1666813..a205853 100644
--- a/src/lib/ecore_con/ecore_con_local_win32.c
+++ b/src/lib/ecore_con/ecore_con_local_win32.c
@@ -40,19 +40,20 @@ _ecore_con_local_win32_server_read_client_handler(void 
*data, Ecore_Win32_Handle
    void *buf;
    DWORD n;
    Eina_Bool broken_pipe = EINA_FALSE;
+   Ecore_Con_Server_Data *host_svr = eo_data_scope_get(cl->host_server, 
ECORE_CON_CLIENT_CLASS);
 
-   if (!ResetEvent(cl->host_server->event_read))
+   if (!ResetEvent(host_svr->event_read))
      return ECORE_CALLBACK_RENEW;
 
-   buf = malloc(cl->host_server->nbr_bytes);
+   buf = malloc(host_svr->nbr_bytes);
    if (!buf)
      return ECORE_CALLBACK_RENEW;
 
-   if (ReadFile(cl->host_server->pipe, buf, cl->host_server->nbr_bytes, &n, 
NULL))
+   if (ReadFile(host_svr->pipe, buf, host_svr->nbr_bytes, &n, NULL))
      {
         if (!cl->delete_me)
-          ecore_con_event_client_data(cl, buf, cl->host_server->nbr_bytes, 
EINA_FALSE);
-        cl->host_server->want_write = 1;
+          ecore_con_event_client_data(obj, buf, host_svr->nbr_bytes, 
EINA_FALSE);
+        host_svr->want_write = 1;
      }
    else
      {
@@ -72,12 +73,12 @@ _ecore_con_local_win32_server_read_client_handler(void 
*data, Ecore_Win32_Handle
              free(msg);
           }
 #endif
-        _ecore_con_client_kill(cl);
+        _ecore_con_client_kill(obj);
         return ECORE_CALLBACK_CANCEL;
      }
 
-   if (cl->host_server->want_write)
-     ecore_con_local_win32_client_flush(cl);
+   if (host_svr->want_write)
+     ecore_con_local_win32_client_flush(obj);
 
    ecore_main_win32_handler_del(wh);
 
@@ -89,18 +90,19 @@ _ecore_con_local_win32_server_peek_client_handler(void 
*data, Ecore_Win32_Handle
 {
    Ecore_Con_Client *obj = data;
    Ecore_Con_Client_Data *cl = eo_data_scope_get(obj, ECORE_CON_CLIENT_CLASS);
+   Ecore_Con_Server_Data *host_svr = eo_data_scope_get(cl->host_server, 
ECORE_CON_CLIENT_CLASS);
 #if 0
    char *msg;
 #endif
 
-   if (!ResetEvent(cl->host_server->event_peek))
+   if (!ResetEvent(host_svr->event_peek))
      return ECORE_CALLBACK_RENEW;
 
 #if 0
    msg = evil_last_error_get();
    if (msg)
      {
-        ecore_con_event_server_error(cl->host_server, msg);
+        ecore_con_event_server_error(host_svr, msg);
         free(msg);
      }
 #endif
@@ -115,6 +117,7 @@ _ecore_con_local_win32_server_peek_client_handler(void 
*data, Ecore_Win32_Handle
 static Eina_Bool
 _ecore_con_local_win32_client_peek_server_handler(void *data, 
Ecore_Win32_Handler *wh)
 {
+   Ecore_Con_Server *obj = data;
    Ecore_Con_Server_Data *svr = eo_data_scope_get(obj, ECORE_CON_SERVER_CLASS);
 #if 0
    char *msg;
@@ -141,6 +144,7 @@ _ecore_con_local_win32_client_peek_server_handler(void 
*data, Ecore_Win32_Handle
 static Eina_Bool
 _ecore_con_local_win32_client_read_server_handler(void *data, 
Ecore_Win32_Handler *wh)
 {
+   Ecore_Con_Server *obj = data;
    Ecore_Con_Server_Data *svr = eo_data_scope_get(obj, ECORE_CON_SERVER_CLASS);
    void *buf;
    DWORD n;
@@ -193,6 +197,7 @@ _ecore_con_local_win32_client_read_server_handler(void 
*data, Ecore_Win32_Handle
 static unsigned int __stdcall
 _ecore_con_local_win32_client_read_server_thread(void *data)
 {
+   Ecore_Con_Server *obj = data;
    Ecore_Con_Server_Data *svr = eo_data_scope_get(obj, ECORE_CON_SERVER_CLASS);
    DWORD nbr_bytes = 0;
 
@@ -232,26 +237,27 @@ _ecore_con_local_win32_server_read_client_thread(void 
*data)
 {
    Ecore_Con_Client *obj = data;
    Ecore_Con_Client_Data *cl = eo_data_scope_get(obj, ECORE_CON_CLIENT_CLASS);
+   Ecore_Con_Server_Data *host_svr = eo_data_scope_get(cl->host_server, 
ECORE_CON_CLIENT_CLASS);
    DWORD nbr_bytes = 0;
 
-   cl->host_server->read_stopped = EINA_FALSE;
+   host_svr->read_stopped = EINA_FALSE;
 
-   while (!cl->host_server->read_stop)
+   while (!host_svr->read_stop)
      {
-        if (PeekNamedPipe(cl->host_server->pipe, NULL, 0, NULL, &nbr_bytes, 
NULL))
+        if (PeekNamedPipe(host_svr->pipe, NULL, 0, NULL, &nbr_bytes, NULL))
           {
              if (nbr_bytes <= 0)
                continue;
 
-             cl->host_server->nbr_bytes = nbr_bytes;
-             if (!SetEvent(cl->host_server->event_read))
+             host_svr->nbr_bytes = nbr_bytes;
+             if (!SetEvent(host_svr->event_read))
                continue;
           }
         else
           {
              if (GetLastError() == ERROR_BROKEN_PIPE)
                {
-                  if (!SetEvent(cl->host_server->event_peek))
+                  if (!SetEvent(host_svr->event_peek))
                     continue;
                   break;
                }
@@ -259,7 +265,7 @@ _ecore_con_local_win32_server_read_client_thread(void *data)
      }
 
    printf(" ### %s\n", __FUNCTION__);
-   cl->host_server->read_stopped = EINA_TRUE;
+   host_svr->read_stopped = EINA_TRUE;
    _endthreadex(0);
    return 0;
 }
@@ -267,7 +273,6 @@ _ecore_con_local_win32_server_read_client_thread(void *data)
 static Eina_Bool
 _ecore_con_local_win32_client_add(void *data, Ecore_Win32_Handler *wh)
 {
-   Ecore_Con_Client *cl = NULL;
    Ecore_Con_Server *obj = data;
    Ecore_Con_Server_Data *svr = eo_data_scope_get(obj, ECORE_CON_SERVER_CLASS);
    Ecore_Win32_Handler *handler_read;
@@ -283,7 +288,7 @@ _ecore_con_local_win32_client_add(void *data, 
Ecore_Win32_Handler *wh)
        (svr->client_count >= (unsigned int)svr->client_limit))
      return ECORE_CALLBACK_CANCEL;
 
-   cl_obj = eo_add(ECORE_CON_CLIENT_CLASS, NULL);
+   Ecore_Con_Client *cl_obj = eo_add(ECORE_CON_CLIENT_CLASS, NULL);
    Ecore_Con_Client_Data *cl = eo_data_scope_get(obj, ECORE_CON_CLIENT_CLASS);
    if (!cl)
      {
@@ -351,9 +356,9 @@ close_event_peek:
 del_handler_read:
    ecore_main_win32_handler_del(handler_read);
 close_event_read:
-r  CloseHandle(svr->event_read);
+   CloseHandle(svr->event_read);
 free_cl:
-   free(cl);
+   eo_del(cl_obj);
 
    return ECORE_CALLBACK_CANCEL;
 }
@@ -503,7 +508,7 @@ void
 ecore_con_local_win32_client_del(Ecore_Con_Client *obj)
 {
    Ecore_Con_Client_Data *cl = eo_data_scope_get(obj, ECORE_CON_CLIENT_CLASS);
-   Ecore_Con_Server_Data *host_svr = eo_data_scope_get(cl->host_server, 
ECORE_CON_CLIENT_CLASS);
+   Ecore_Con_Server_Data *svr = eo_data_scope_get(cl->host_server, 
ECORE_CON_CLIENT_CLASS);
 
    if ((svr->type & ECORE_CON_TYPE) == ECORE_CON_LOCAL_ABSTRACT)
      return;
@@ -707,7 +712,7 @@ ecore_con_local_win32_client_flush(Ecore_Con_Client *obj)
    size_t num;
    BOOL res;
    DWORD written;
-   Ecore_Con_Server_Data *host_svr = eo_data_scope_get(cl->host_server, 
ECORE_CON_CLIENT_CLASS);
+   Ecore_Con_Server_Data *svr = eo_data_scope_get(cl->host_server, 
ECORE_CON_CLIENT_CLASS);
 
    type = svr->type & ECORE_CON_TYPE;
 

-- 


Reply via email to