[PATCH] localspl: Return 0 for the local computer
Detlef Riekenberg
wine.dev at web.de
Thu Mar 12 23:18:39 CDT 2009
---
dlls/localspl/provider.c | 15 ++++++++-------
1 files changed, 8 insertions(+), 7 deletions(-)
diff --git a/dlls/localspl/provider.c b/dlls/localspl/provider.c
index dcb8b08..f308e36 100644
--- a/dlls/localspl/provider.c
+++ b/dlls/localspl/provider.c
@@ -251,25 +251,26 @@ static LONG copy_servername_from_name(LPCWSTR name, LPWSTR target)
ptr = strchrW(server, '\\');
serverlen = (ptr) ? ptr - server : lstrlenW(server);
- /* servername is empty or to long */
+ /* servername is empty */
if (serverlen == 0) return 0;
TRACE("found %s\n", debugstr_wn(server, serverlen));
if (serverlen > MAX_COMPUTERNAME_LENGTH) return -serverlen;
+ if (target) {
+ memcpy(target, server, serverlen * sizeof(WCHAR));
+ target[serverlen] = '\0';
+ }
+
len = sizeof(buffer) / sizeof(buffer[0]);
if (GetComputerNameW(buffer, &len)) {
if ((serverlen == len) && (strncmpiW(server, buffer, len) == 0)) {
/* The requested Servername is our computername */
- if (target) {
- memcpy(target, server, serverlen * sizeof(WCHAR));
- target[serverlen] = '\0';
- }
- return serverlen;
+ return 0;
}
}
- return 0;
+ return serverlen;
}
/******************************************************************
--
1.5.4.3
--=-QUXw7PZ+VmhAlq7HN3Vb--
More information about the wine-patches
mailing list