Rolf Kalbermatter : advapi32: Fix return value to indicate error when NULL string is passed in.

Alexandre Julliard julliard at wine.codeweavers.com
Mon May 21 09:40:16 CDT 2007


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

Author: Rolf Kalbermatter <r.kalbermatter at hccnet.nl>
Date:   Fri May 18 21:02:20 2007 +0200

advapi32: Fix return value to indicate error when NULL string is passed in.

---

 dlls/advapi32/service.c |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/dlls/advapi32/service.c b/dlls/advapi32/service.c
index e9a1160..23fdd5c 100644
--- a/dlls/advapi32/service.c
+++ b/dlls/advapi32/service.c
@@ -2078,6 +2078,9 @@ BOOL WINAPI GetServiceDisplayNameA( SC_HANDLE hSCManager, LPCSTR lpServiceName,
 
     size = *lpcchBuffer;
     ret = RegGetValueA(hscm->hkey, lpServiceName, "DisplayName", RRF_RT_REG_SZ, &type, lpDisplayName, &size);
+    if (!ret && !lpDisplayName && size)
+        ret = ERROR_MORE_DATA;
+
     if (ret)
     {
         if (lpDisplayName && *lpcchBuffer) *lpDisplayName = 0;
@@ -2116,6 +2119,9 @@ BOOL WINAPI GetServiceDisplayNameW( SC_HANDLE hSCManager, LPCWSTR lpServiceName,
 
     size = *lpcchBuffer * sizeof(WCHAR);
     ret = RegGetValueW(hscm->hkey, lpServiceName, szDisplayName, RRF_RT_REG_SZ, &type, lpDisplayName, &size);
+    if (!ret && !lpDisplayName && size)
+        ret = ERROR_MORE_DATA;
+
     if (ret)
     {
         if (lpDisplayName && *lpcchBuffer) *lpDisplayName = 0;




More information about the wine-cvs mailing list