Sebastian Lackner : services: Remove pipe argument from service_send_command function.

Alexandre Julliard julliard at wine.codeweavers.com
Wed Mar 2 11:26:09 CST 2016


Module: wine
Branch: master
Commit: 0819c739ec3fe0eb7fc6ffec5ae6567a30e33f72
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=0819c739ec3fe0eb7fc6ffec5ae6567a30e33f72

Author: Sebastian Lackner <sebastian at fds-team.de>
Date:   Wed Mar  2 07:19:36 2016 +0100

services: Remove pipe argument from service_send_command function.

Signed-off-by: Sebastian Lackner <sebastian at fds-team.de>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 programs/services/rpc.c      | 18 ++++++++----------
 programs/services/services.c |  2 +-
 programs/services/services.h |  3 +--
 3 files changed, 10 insertions(+), 13 deletions(-)

diff --git a/programs/services/rpc.c b/programs/services/rpc.c
index 0b194cf..5c25a2e 100644
--- a/programs/services/rpc.c
+++ b/programs/services/rpc.c
@@ -992,15 +992,14 @@ static BOOL service_accepts_control(const struct service_entry *service, DWORD d
 /******************************************************************************
  * service_send_command
  */
-BOOL service_send_command( struct service_entry *service, HANDLE pipe,
-                           const void *data, DWORD size, DWORD *result )
+BOOL service_send_command( struct service_entry *service, const void *data, DWORD size, DWORD *result )
 {
     OVERLAPPED overlapped;
     DWORD count, ret;
     BOOL r;
 
     overlapped.hEvent = service->overlapped_event;
-    r = WriteFile(pipe, data, size, &count, &overlapped);
+    r = WriteFile(service->control_pipe, data, size, &count, &overlapped);
     if (!r && GetLastError() == ERROR_IO_PENDING)
     {
         ret = WaitForSingleObject( service->overlapped_event, service_pipe_timeout );
@@ -1010,7 +1009,7 @@ BOOL service_send_command( struct service_entry *service, HANDLE pipe,
             *result = ERROR_SERVICE_REQUEST_TIMEOUT;
             return FALSE;
         }
-        r = GetOverlappedResult( pipe, &overlapped, &count, FALSE );
+        r = GetOverlappedResult(service->control_pipe, &overlapped, &count, FALSE);
     }
     if (!r || count != size)
     {
@@ -1018,7 +1017,7 @@ BOOL service_send_command( struct service_entry *service, HANDLE pipe,
         *result  = (!r ? GetLastError() : ERROR_WRITE_FAULT);
         return FALSE;
     }
-    r = ReadFile(pipe, result, sizeof *result, &count, &overlapped);
+    r = ReadFile(service->control_pipe, result, sizeof *result, &count, &overlapped);
     if (!r && GetLastError() == ERROR_IO_PENDING)
     {
         ret = WaitForSingleObject( service->overlapped_event, service_pipe_timeout );
@@ -1028,7 +1027,7 @@ BOOL service_send_command( struct service_entry *service, HANDLE pipe,
             *result = ERROR_SERVICE_REQUEST_TIMEOUT;
             return FALSE;
         }
-        r = GetOverlappedResult( pipe, &overlapped, &count, FALSE );
+        r = GetOverlappedResult(service->control_pipe, &overlapped, &count, FALSE);
     }
     if (!r || count != sizeof *result)
     {
@@ -1045,7 +1044,7 @@ BOOL service_send_command( struct service_entry *service, HANDLE pipe,
 /******************************************************************************
  * service_send_control
  */
-static BOOL service_send_control(struct service_entry *service, HANDLE pipe, DWORD dwControl, DWORD *result)
+static BOOL service_send_control(struct service_entry *service, DWORD dwControl, DWORD *result)
 {
     service_start_info *ssi;
     DWORD len;
@@ -1061,7 +1060,7 @@ static BOOL service_send_control(struct service_entry *service, HANDLE pipe, DWO
     ssi->name_size = strlenW(service->name) + 1;
     strcpyW( ssi->data, service->name );
 
-    r = service_send_command( service, pipe, ssi, ssi->total_size, result );
+    r = service_send_command( service, ssi, ssi->total_size, result );
     HeapFree( GetProcessHeap(), 0, ssi );
     return r;
 }
@@ -1182,8 +1181,7 @@ DWORD __cdecl svcctl_ControlService(
     ret = WaitForSingleObject(control_mutex, 30000);
     if (ret == WAIT_OBJECT_0)
     {
-        service_send_control(service->service_entry, service->service_entry->control_pipe,
-                dwControl, &result);
+        service_send_control(service->service_entry, dwControl, &result);
 
         if (lpServiceStatus)
         {
diff --git a/programs/services/services.c b/programs/services/services.c
index 8489f17..a53d68f 100644
--- a/programs/services/services.c
+++ b/programs/services/services.c
@@ -834,7 +834,7 @@ static BOOL service_send_start_message(struct service_entry *service, HANDLE pro
     }
     *p=0;
 
-    r = service_send_command( service, service->control_pipe, ssi, ssi->total_size, &result );
+    r = service_send_command( service, ssi, ssi->total_size, &result );
     if (r && result)
     {
         SetLastError(result);
diff --git a/programs/services/services.h b/programs/services/services.h
index 9090542..bf4ce89 100644
--- a/programs/services/services.h
+++ b/programs/services/services.h
@@ -80,8 +80,7 @@ void service_lock_exclusive(struct service_entry *service);
 void service_unlock(struct service_entry *service);
 DWORD service_start(struct service_entry *service, DWORD service_argc, LPCWSTR *service_argv);
 void service_terminate(struct service_entry *service);
-BOOL service_send_command( struct service_entry *service, HANDLE pipe,
-                           const void *data, DWORD size, DWORD *result );
+BOOL service_send_command( struct service_entry *service, const void *data, DWORD size, DWORD *result );
 
 extern HANDLE g_hStartedEvent;
 




More information about the wine-cvs mailing list