[programs/regedit/regproc.c] Strncpy elimination.
Peter Berg Larsen
pebl at math.ku.dk
Sun Mar 27 13:48:18 CST 2005
First Hunk: I am not certain that KEY_MAX_LEN (= 1024) arrays always are
\0 terminated, but some place uses strlen on such arrays.
Changelog:
Change strncpy to lstrcpynA.
Index: programs/regedit/regproc.c
===================================================================
RCS file: /home/wine/wine/programs/regedit/regproc.c,v
retrieving revision 1.17
diff -u -r1.17 regproc.c
--- programs/regedit/regproc.c 25 Feb 2005 14:07:56 -0000 1.17
+++ programs/regedit/regproc.c 26 Mar 2005 09:41:53 -0000
@@ -528,7 +528,7 @@
if (lpClass == NULL)
return (HKEY)ERROR_INVALID_PARAMETER;
- strncpy(lpClassCopy, lpClass, KEY_MAX_LEN);
+ lstrcpynA(lpClassCopy, lpClass, KEY_MAX_LEN);
classNameEnd = strchr(lpClassCopy, '\\'); /* The class name ends by '\' */
if (!classNameEnd) /* or the whole string */
@@ -792,8 +792,7 @@
if (hRes == ERROR_SUCCESS) {
lpsRes = HeapAlloc( GetProcessHeap(), 0, lLen);
- strncpy(lpsRes, lpsData, lLen);
- lpsRes[lLen-1]='\0';
+ lstrcpynA(lpsRes, lpsData, lLen);
}
} else {
DWORD dwLen = KEY_MAX_LEN;
@@ -823,8 +822,7 @@
case REG_SZ:
case REG_EXPAND_SZ: {
lpsRes = HeapAlloc( GetProcessHeap(), 0, dwLen);
- strncpy(lpsRes, lpbData, dwLen);
- lpsRes[dwLen-1]='\0';
+ lstrcpynA(lpsRes, lpbData, dwLen);
break;
}
case REG_DWORD: {
More information about the wine-patches
mailing list