Thomas Faber : oleview: Avoid variable-length arrays.
Alexandre Julliard
julliard at winehq.org
Tue Mar 25 14:27:43 CDT 2014
Module: wine
Branch: master
Commit: 644bda381e8ea87248b2ea4590c6ae4fcf337399
URL: http://source.winehq.org/git/wine.git/?a=commit;h=644bda381e8ea87248b2ea4590c6ae4fcf337399
Author: Thomas Faber <thomas.faber at reactos.org>
Date: Tue Mar 25 11:27:12 2014 +0100
oleview: Avoid variable-length arrays.
---
programs/oleview/details.c | 8 ++++----
programs/oleview/tree.c | 6 +++---
2 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/programs/oleview/details.c b/programs/oleview/details.c
index f7bb523..9fdd9f3 100644
--- a/programs/oleview/details.c
+++ b/programs/oleview/details.c
@@ -158,7 +158,7 @@ static void CreateRegRec(HKEY hKey, HTREEITEM parent, WCHAR *wszKeyName, BOOL ad
RegCloseKey(hCurKey);
- memmove(&wszData[6], wszData, sizeof(WCHAR[lenData]));
+ memmove(&wszData[6], wszData, lenData * sizeof(WCHAR));
memcpy(wszData, wszCLSID, sizeof(WCHAR[6]));
wszData[5] = '\\';
@@ -187,7 +187,7 @@ static void CreateRegRec(HKEY hKey, HTREEITEM parent, WCHAR *wszKeyName, BOOL ad
RegCloseKey(hCurKey);
- memmove(&wszData[8], wszData, sizeof(WCHAR[lenData]));
+ memmove(&wszData[8], wszData, lenData * sizeof(WCHAR));
memcpy(wszData, wszTypeLib, sizeof(WCHAR[8]));
wszData[7] = '\\';
RegOpenKeyW(HKEY_CLASSES_ROOT, wszData, &hCurKey);
@@ -238,9 +238,9 @@ static void CreateReg(WCHAR *buffer)
if(RegQueryValueW(hKey, NULL, wszTree, (LONG *)&lenTree) == ERROR_SUCCESS)
{
memmove(&wszTree[lenBuffer-lastLenBuffer+3], wszTree,
- sizeof(WCHAR[lenTree]));
+ lenTree * sizeof(WCHAR));
memcpy(wszTree, &buffer[lastLenBuffer],
- sizeof(WCHAR[lenBuffer-lastLenBuffer]));
+ (lenBuffer - lastLenBuffer) * sizeof(WCHAR));
if(lenTree == 1) wszTree[lenBuffer-lastLenBuffer] = '\0';
else
diff --git a/programs/oleview/tree.c b/programs/oleview/tree.c
index 241c32c..34021e7 100644
--- a/programs/oleview/tree.c
+++ b/programs/oleview/tree.c
@@ -225,7 +225,7 @@ BOOL CreateRegPath(HTREEITEM item, WCHAR *buffer, int bufSize)
int bufLen;
BOOL ret;
- memset(buffer, 0, sizeof(WCHAR[bufSize]));
+ memset(buffer, 0, bufSize * sizeof(WCHAR));
memset(&tvi, 0, sizeof(TVITEMW));
tvi.hItem = item;
@@ -239,8 +239,8 @@ BOOL CreateRegPath(HTREEITEM item, WCHAR *buffer, int bufSize)
if(tvi.lParam && (((ITEM_INFO *)tvi.lParam)->cFlag & (REGPATH|REGTOP)))
{
bufLen = lstrlenW(((ITEM_INFO *)tvi.lParam)->info);
- memmove(&buffer[bufLen], buffer, sizeof(WCHAR[bufSize-bufLen]));
- memcpy(buffer, ((ITEM_INFO *)tvi.lParam)->info, sizeof(WCHAR[bufLen]));
+ memmove(&buffer[bufLen], buffer, (bufSize - bufLen) * sizeof(WCHAR));
+ memcpy(buffer, ((ITEM_INFO *)tvi.lParam)->info, bufLen * sizeof(WCHAR));
}
if(tvi.lParam && ((ITEM_INFO *)tvi.lParam)->cFlag & REGTOP) break;
More information about the wine-cvs
mailing list