From b622101ef252071f6797368f0b4c0911ade2bd5a Mon Sep 17 00:00:00 2001 From: Alexander Morozov Date: Tue, 1 Apr 2008 14:24:50 +0300 Subject: [PATCH] setupapi: Creating SymbolicLink value in registry as in Windows XP. --- dlls/setupapi/devinst.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/dlls/setupapi/devinst.c b/dlls/setupapi/devinst.c index 60da5e8187e..e9c81241dee 100644 --- a/dlls/setupapi/devinst.c +++ b/dlls/setupapi/devinst.c @@ -244,7 +244,7 @@ static LPWSTR SETUPDI_CreateSymbolicLinkPath(LPCWSTR instanceId, /* omit length of format specifiers, but include NULL terminator: */ len = lstrlenW(fmt) - 4 + 1; len += lstrlenW(instanceId) + lstrlenW(guidStr); - if (ReferenceString) + if (ReferenceString && *ReferenceString) { /* space for a hash between string and reference string: */ len += lstrlenW(ReferenceString) + 1; @@ -258,10 +258,10 @@ static LPWSTR SETUPDI_CreateSymbolicLinkPath(LPCWSTR instanceId, /* replace '\\' with '#' after the "\\\\?\\" beginning */ for (ptr = strchrW(ret + 4, '\\'); ptr; ptr = strchrW(ptr + 1, '\\')) *ptr = '#'; - if (ReferenceString) + if (ReferenceString && *ReferenceString) { - ret[printed - 1] = '\\'; - lstrcpyW(ret + printed, ReferenceString); + ret[printed] = '\\'; + lstrcpyW(ret + printed + 1, ReferenceString); } } return ret; -- 2.11.4.GIT