https://git.reactos.org/?p=reactos.git;a=commitdiff;h=d3d67bf5bd99c03371f82497bf82f0c84e98658b

commit d3d67bf5bd99c03371f82497bf82f0c84e98658b
Author:     Eric Kohl <eric.k...@reactos.org>
AuthorDate: Sun Jan 21 22:42:26 2024 +0100
Commit:     Eric Kohl <eric.k...@reactos.org>
CommitDate: Sun Jan 21 22:42:26 2024 +0100

    [SERVICES] Separate the start tag and the service tag of the manages 
services
    
    This fixes two winetest errors.
---
 base/system/services/database.c | 8 ++++----
 base/system/services/services.h | 1 +
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/base/system/services/database.c b/base/system/services/database.c
index 3ec18104158..1b7b2e67af9 100644
--- a/base/system/services/database.c
+++ b/base/system/services/database.c
@@ -4,7 +4,7 @@
  * FILE:        base/system/services/database.c
  * PURPOSE:     Database control interface
  * COPYRIGHT:   Copyright 2002-2006 Eric Kohl
- *              Copyright 2006 Herv� Poussineau <hpous...@reactos.org>
+ *              Copyright 2006 Hervé Poussineau <hpous...@reactos.org>
  *              Copyright 2007 Ged Murphy <gedmur...@reactos.org>
  *                             Gregor Brunmar <gregor.brun...@home.se>
  *
@@ -201,7 +201,7 @@ ScmGetServiceNameFromTag(IN 
PTAG_INFO_NAME_FROM_TAG_IN_PARAMS InParams,
                                            ServiceListEntry);
 
         /* We must match the tag */
-        if (CurrentService->dwTag == InParams->dwTag &&
+        if (CurrentService->dwServiceTag == InParams->dwTag &&
             CurrentService->lpImage != NULL)
         {
             CurrentImage = CurrentService->lpImage;
@@ -757,7 +757,7 @@ ScmGenerateServiceTag(PSERVICE lpServiceRecord)
 
     /* Increment the tag counter and set it */
     ServiceTag = ServiceTag % 0xFFFFFFFF + 1;
-    lpServiceRecord->dwTag = ServiceTag;
+    lpServiceRecord->dwServiceTag = ServiceTag;
 
     return ERROR_SUCCESS;
 }
@@ -1536,7 +1536,7 @@ ScmSendStartCommand(PSERVICE Service,
                                ? SERVICE_CONTROL_START_OWN
                                : SERVICE_CONTROL_START_SHARE;
     ControlPacket->hServiceStatus = (SERVICE_STATUS_HANDLE)Service;
-    ControlPacket->dwServiceTag = Service->dwTag;
+    ControlPacket->dwServiceTag = Service->dwServiceTag;
 
     /* Copy the start command line */
     ControlPacket->dwServiceNameOffset = sizeof(SCM_CONTROL_PACKET);
diff --git a/base/system/services/services.h b/base/system/services/services.h
index 204375c17c6..c333c10d476 100644
--- a/base/system/services/services.h
+++ b/base/system/services/services.h
@@ -73,6 +73,7 @@ typedef struct _SERVICE
     DWORD dwTag;
 
     DWORD dwServiceBits;
+    DWORD dwServiceTag;
 
     ULONG Flags;
 

Reply via email to