Author: janderwald
Date: Thu Feb 5 14:18:11 2009
New Revision: 39420
URL:
http://svn.reactos.org/svn/reactos?rev=39420&view=rev
Log:
- Fix returned length for RGetServiceKeyNameW
- Perform parameters check in right order in ROpenServiceW
Modified:
trunk/reactos/base/system/services/rpcserver.c
Modified: trunk/reactos/base/system/services/rpcserver.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/system/services/rpcse…
==============================================================================
--- trunk/reactos/base/system/services/rpcserver.c [iso-8859-1] (original)
+++ trunk/reactos/base/system/services/rpcserver.c [iso-8859-1] Thu Feb 5 14:18:11 2009
@@ -2445,18 +2445,18 @@
if (ScmShutdown)
return ERROR_SHUTDOWN_IN_PROGRESS;
+ hManager = (PMANAGER_HANDLE)hSCManager;
+ if (!hManager || hManager->Handle.Tag != MANAGER_TAG)
+ {
+ DPRINT1("Invalid manager handle!\n");
+ return ERROR_INVALID_HANDLE;
+ }
+
if (!lpServiceHandle)
return ERROR_INVALID_PARAMETER;
if (!lpServiceName)
return ERROR_INVALID_ADDRESS;
-
- hManager = (PMANAGER_HANDLE)hSCManager;
- if (!hManager || hManager->Handle.Tag != MANAGER_TAG)
- {
- DPRINT1("Invalid manager handle!\n");
- return ERROR_INVALID_HANDLE;
- }
/* FIXME: Lock the service list */
@@ -2872,7 +2872,7 @@
dwError = (*lpcchBuffer > dwLength) ? ERROR_SUCCESS : ERROR_INSUFFICIENT_BUFFER;
- *lpcchBuffer = dwLength * 2;
+ *lpcchBuffer = dwLength;
return dwError;
}