Sebastian Lackner : services: Get rid of unnecessary locks.

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


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

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

services: Get rid of unnecessary locks.

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

---

 programs/services/rpc.c      | 6 ------
 programs/services/services.c | 2 --
 2 files changed, 8 deletions(-)

diff --git a/programs/services/rpc.c b/programs/services/rpc.c
index d9379c4..aad3b22 100644
--- a/programs/services/rpc.c
+++ b/programs/services/rpc.c
@@ -274,7 +274,6 @@ DWORD __cdecl svcctl_GetServiceDisplayNameW(
     {
         LPCWSTR name;
         int len;
-        service_lock(entry);
         name = get_display_name(entry);
         len = strlenW(name);
         if (len <= *cchBufSize)
@@ -285,7 +284,6 @@ DWORD __cdecl svcctl_GetServiceDisplayNameW(
         else
             err = ERROR_INSUFFICIENT_BUFFER;
         *cchBufSize = len;
-        service_unlock(entry);
     }
     else
         err = ERROR_SERVICE_DOES_NOT_EXIST;
@@ -319,7 +317,6 @@ DWORD __cdecl svcctl_GetServiceKeyNameW(
     if (entry != NULL)
     {
         int len;
-        service_lock(entry);
         len = strlenW(entry->name);
         if (len <= *cchBufSize)
         {
@@ -329,7 +326,6 @@ DWORD __cdecl svcctl_GetServiceKeyNameW(
         else
             err = ERROR_INSUFFICIENT_BUFFER;
         *cchBufSize = len;
-        service_unlock(entry);
     }
     else
         err = ERROR_SERVICE_DOES_NOT_EXIST;
@@ -539,9 +535,7 @@ static DWORD create_serviceW(
 
     if ((found = scmdatabase_find_service(manager->db, lpServiceName)))
     {
-        service_lock(found);
         err = is_marked_for_delete(found) ? ERROR_SERVICE_MARKED_FOR_DELETE : ERROR_SERVICE_EXISTS;
-        service_unlock(found);
         scmdatabase_unlock(manager->db);
         free_service_entry(entry);
         return err;
diff --git a/programs/services/services.c b/programs/services/services.c
index 1972cce..c45aed3 100644
--- a/programs/services/services.c
+++ b/programs/services/services.c
@@ -435,9 +435,7 @@ void release_service(struct service_entry *service)
     if (InterlockedDecrement(&service->ref_count) == 0 && is_marked_for_delete(service))
     {
         scmdatabase_lock(service->db);
-        service_lock(service);
         scmdatabase_remove_service(service->db, service);
-        service_unlock(service);
         scmdatabase_unlock(service->db);
         free_service_entry(service);
     }




More information about the wine-cvs mailing list