From 9713e68a557dc610c46540bf4e4f083a2ddf0933 Mon Sep 17 00:00:00 2001 From: Michael Stefaniuc Date: Sat, 15 Sep 2018 00:10:31 +0200 Subject: [PATCH] shlwapi: Use the ARRAY_SIZE() macro. Signed-off-by: Michael Stefaniuc Signed-off-by: Alexandre Julliard --- dlls/shlwapi/assoc.c | 2 +- dlls/shlwapi/ordinal.c | 18 +++++++++--------- dlls/shlwapi/path.c | 18 +++++++++--------- dlls/shlwapi/reg.c | 10 +++++----- dlls/shlwapi/string.c | 14 ++++++-------- dlls/shlwapi/url.c | 29 ++++++++++++++--------------- 6 files changed, 44 insertions(+), 47 deletions(-) diff --git a/dlls/shlwapi/assoc.c b/dlls/shlwapi/assoc.c index 31569908b30..5faeab64fbc 100644 --- a/dlls/shlwapi/assoc.c +++ b/dlls/shlwapi/assoc.c @@ -276,7 +276,7 @@ HRESULT WINAPI AssocQueryStringA(ASSOCF cfFlags, ASSOCSTR str, LPCSTR pszAssoc, lpszReturnW = HeapAlloc(GetProcessHeap(), 0, (dwLenOut + 1) * sizeof(WCHAR)); else - dwLenOut = sizeof(szReturnW) / sizeof(szReturnW[0]); + dwLenOut = ARRAY_SIZE(szReturnW); if (!lpszReturnW) hRet = E_OUTOFMEMORY; diff --git a/dlls/shlwapi/ordinal.c b/dlls/shlwapi/ordinal.c index 903df91aa02..449b47b2f73 100644 --- a/dlls/shlwapi/ordinal.c +++ b/dlls/shlwapi/ordinal.c @@ -2440,7 +2440,7 @@ HMODULE WINAPI SHPinDllOfCLSID(REFIID refiid) CHAR value[MAX_PATH], string[MAX_PATH]; strcpy(string, "CLSID\\"); - SHStringFromGUIDA(refiid, string + 6, sizeof(string)/sizeof(char) - 6); + SHStringFromGUIDA(refiid, string + 6, ARRAY_SIZE(string) - 6); strcat(string, "\\InProcServer32"); count = MAX_PATH; @@ -2778,7 +2778,7 @@ VOID WINAPI SHWeakReleaseInterface(IUnknown *lpDest, IUnknown **lppUnknown) BOOL WINAPI GUIDFromStringA(LPCSTR idstr, CLSID *id) { WCHAR wClsid[40]; - MultiByteToWideChar(CP_ACP, 0, idstr, -1, wClsid, sizeof(wClsid)/sizeof(WCHAR)); + MultiByteToWideChar(CP_ACP, 0, idstr, -1, wClsid, ARRAY_SIZE(wClsid)); return SUCCEEDED(CLSIDFromString(wClsid, id)); } @@ -3600,8 +3600,8 @@ HMODULE WINAPI MLLoadLibraryW(LPCWSTR new_mod, HMODULE inst_hwnd, DWORD dwCrossC DWORD len; FIXME("(%s,%p,%d) semi-stub!\n", debugstr_w(new_mod), inst_hwnd, dwCrossCodePage); - len = GetModuleFileNameW(inst_hwnd, mod_path, sizeof(mod_path) / sizeof(WCHAR)); - if (!len || len >= sizeof(mod_path) / sizeof(WCHAR)) return NULL; + len = GetModuleFileNameW(inst_hwnd, mod_path, ARRAY_SIZE(mod_path)); + if (!len || len >= ARRAY_SIZE(mod_path)) return NULL; ptr = strrchrW(mod_path, '\\'); if (ptr) { @@ -4755,7 +4755,7 @@ INT WINAPIV ShellMessageBoxWrapW(HINSTANCE hInstance, HWND hWnd, LPCWSTR lpText, TRACE("(%p,%p,%p,%p,%08x)\n", hInstance, hWnd, lpText, lpCaption, uType); if (IS_INTRESOURCE(lpCaption)) - LoadStringW(hInstance, LOWORD(lpCaption), szTitle, sizeof(szTitle)/sizeof(szTitle[0])); + LoadStringW(hInstance, LOWORD(lpCaption), szTitle, ARRAY_SIZE(szTitle)); else pszTitle = lpCaption; @@ -5280,8 +5280,8 @@ DWORD WINAPI SHGetObjectCompatFlags(IUnknown *pUnk, const CLSID *clsid) 'W','i','n','d','o','w','s','\\','C','u','r','r','e','n','t','V','e','r','s','i','o','n','\\', 'S','h','e','l','l','C','o','m','p','a','t','i','b','i','l','i','t','y','\\', 'O','b','j','e','c','t','s','\\','%','s',0}; - WCHAR strW[sizeof(compatpathW)/sizeof(WCHAR) + 38 /* { CLSID } */]; - DWORD ret, length = sizeof(strW)/sizeof(WCHAR); + WCHAR strW[ARRAY_SIZE(compatpathW) + 38 /* { CLSID } */]; + DWORD ret, length = ARRAY_SIZE(strW); OLECHAR *clsid_str; HKEY key; INT i; @@ -5311,7 +5311,7 @@ DWORD WINAPI SHGetObjectCompatFlags(IUnknown *pUnk, const CLSID *clsid) /* search in table */ left = 0; - right = sizeof(objcompat_table) / sizeof(struct objcompat_entry) - 1; + right = ARRAY_SIZE(objcompat_table) - 1; while (right >= left) { x = (left + right) / 2; @@ -5327,7 +5327,7 @@ DWORD WINAPI SHGetObjectCompatFlags(IUnknown *pUnk, const CLSID *clsid) left = x + 1; } - length = sizeof(strW)/sizeof(WCHAR); + length = ARRAY_SIZE(strW); } return ret; diff --git a/dlls/shlwapi/path.c b/dlls/shlwapi/path.c index e24835f2384..ad78c5d2241 100644 --- a/dlls/shlwapi/path.c +++ b/dlls/shlwapi/path.c @@ -3264,7 +3264,7 @@ HRESULT WINAPI PathCreateFromUrlA(LPCSTR pszUrl, LPSTR pszPath, WCHAR *pathW = bufW; UNICODE_STRING urlW; HRESULT ret; - DWORD lenW = sizeof(bufW)/sizeof(WCHAR), lenA; + DWORD lenW = ARRAY_SIZE(bufW), lenA; if (!pszUrl || !pszPath || !pcchPath || !*pcchPath) return E_INVALIDARG; @@ -3684,7 +3684,7 @@ VOID WINAPI PathSetDlgItemPathW(HWND hDlg, int id, LPCWSTR lpszPath) return; if (lpszPath) - lstrcpynW(path, lpszPath, sizeof(path) / sizeof(WCHAR)); + lstrcpynW(path, lpszPath, ARRAY_SIZE(path)); else path[0] = '\0'; @@ -4122,7 +4122,7 @@ static void init_envvars_map(struct envvars_map *map) { while (map->var) { - map->len = ExpandEnvironmentStringsW(map->var, map->path, sizeof(map->path)/sizeof(WCHAR)); + map->len = ExpandEnvironmentStringsW(map->var, map->path, ARRAY_SIZE(map->path)); /* exclude null from length */ if (map->len) map->len--; map++; @@ -4139,12 +4139,12 @@ BOOL WINAPI PathUnExpandEnvStringsW(LPCWSTR path, LPWSTR buffer, UINT buf_len) static struct envvars_map null_var = {NULL, 0, {0}, 0}; struct envvars_map *match = &null_var, *cur; struct envvars_map envvars[] = { - { allusersprofileW, sizeof(allusersprofileW)/sizeof(WCHAR) }, - { appdataW, sizeof(appdataW)/sizeof(WCHAR) }, - { programfilesW, sizeof(programfilesW)/sizeof(WCHAR) }, - { systemrootW, sizeof(systemrootW)/sizeof(WCHAR) }, - { systemdriveW, sizeof(systemdriveW)/sizeof(WCHAR) }, - { userprofileW, sizeof(userprofileW)/sizeof(WCHAR) }, + { allusersprofileW, ARRAY_SIZE(allusersprofileW) }, + { appdataW, ARRAY_SIZE(appdataW) }, + { programfilesW, ARRAY_SIZE(programfilesW) }, + { systemrootW, ARRAY_SIZE(systemrootW) }, + { systemdriveW, ARRAY_SIZE(systemdriveW) }, + { userprofileW, ARRAY_SIZE(userprofileW) }, { NULL } }; DWORD pathlen; diff --git a/dlls/shlwapi/reg.c b/dlls/shlwapi/reg.c index 375c25429db..163351995c7 100644 --- a/dlls/shlwapi/reg.c +++ b/dlls/shlwapi/reg.c @@ -134,7 +134,7 @@ LONG WINAPI SHRegOpenUSKeyW(LPCWSTR Path, REGSAM AccessType, HUSKEY hRelativeUSK /* Create internal HUSKEY */ hKey = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(*hKey)); - lstrcpynW(hKey->lpszPath, Path, sizeof(hKey->lpszPath)/sizeof(WCHAR)); + lstrcpynW(hKey->lpszPath, Path, ARRAY_SIZE(hKey->lpszPath)); if (hRelativeUSKey) { @@ -275,7 +275,7 @@ LONG WINAPI SHRegCreateUSKeyW(LPCWSTR path, REGSAM samDesired, HUSKEY relative_k } ret_key = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(*ret_key)); - lstrcpynW(ret_key->lpszPath, path, sizeof(ret_key->lpszPath)/sizeof(WCHAR)); + lstrcpynW(ret_key->lpszPath, path, ARRAY_SIZE(ret_key->lpszPath)); if (relative_key) { @@ -1534,7 +1534,7 @@ DWORD WINAPI SHDeleteKeyA(HKEY hKey, LPCSTR lpszSubKey) { WCHAR subkeyW[MAX_PATH]; - MultiByteToWideChar (CP_ACP, 0, lpszSubKey, -1, subkeyW, sizeof(subkeyW)/sizeof(WCHAR)); + MultiByteToWideChar (CP_ACP, 0, lpszSubKey, -1, subkeyW, ARRAY_SIZE(subkeyW)); return SHDeleteKeyW(hKey, subkeyW); } @@ -1560,7 +1560,7 @@ DWORD WINAPI SHDeleteKeyW(HKEY hKey, LPCWSTR lpszSubKey) if(!dwRet) { dwMaxSubkeyLen++; - if (dwMaxSubkeyLen > sizeof(szNameBuf)/sizeof(WCHAR)) + if (dwMaxSubkeyLen > ARRAY_SIZE(szNameBuf)) /* Name too big: alloc a buffer for it */ lpszName = HeapAlloc(GetProcessHeap(), 0, dwMaxSubkeyLen*sizeof(WCHAR)); @@ -2409,7 +2409,7 @@ HRESULT WINAPI SHRegGetCLSIDKeyA(REFGUID guid, LPCSTR lpszValue, BOOL bUseHKCU, WCHAR szValue[MAX_PATH]; if (lpszValue) - MultiByteToWideChar(CP_ACP, 0, lpszValue, -1, szValue, sizeof(szValue)/sizeof(WCHAR)); + MultiByteToWideChar(CP_ACP, 0, lpszValue, -1, szValue, ARRAY_SIZE(szValue)); return SHRegGetCLSIDKeyW(guid, lpszValue ? szValue : NULL, bUseHKCU, bCreate, phKey); } diff --git a/dlls/shlwapi/string.c b/dlls/shlwapi/string.c index 0b34d43624c..b190ffc9e46 100644 --- a/dlls/shlwapi/string.c +++ b/dlls/shlwapi/string.c @@ -71,7 +71,7 @@ static void FillNumberFmt(NUMBERFMTW *fmt, LPWSTR decimal_buffer, int decimal_bu * http://blogs.msdn.com/oldnewthing/archive/2006/04/18/578251.aspx */ fmt->Grouping = 0; - GetLocaleInfoW(LOCALE_USER_DEFAULT, LOCALE_SGROUPING, grouping, sizeof(grouping)/sizeof(WCHAR)); + GetLocaleInfoW(LOCALE_USER_DEFAULT, LOCALE_SGROUPING, grouping, ARRAY_SIZE(grouping)); for (c = grouping; *c; c++) if (*c >= '0' && *c < '9') { @@ -101,8 +101,7 @@ static int FormatInt(LONGLONG qdwValue, LPWSTR pszBuf, int cchBuf) WCHAR *c; BOOL neg = (qdwValue < 0); - FillNumberFmt(&fmt, decimal, sizeof decimal / sizeof (WCHAR), - thousand, sizeof thousand / sizeof (WCHAR)); + FillNumberFmt(&fmt, decimal, ARRAY_SIZE(decimal), thousand, ARRAY_SIZE(thousand)); c = &buf[24]; *(--c) = 0; @@ -135,8 +134,7 @@ static int FormatDouble(double value, int decimals, LPWSTR pszBuf, int cchBuf) snprintfW(buf, 64, flfmt, value); - FillNumberFmt(&fmt, decimal, sizeof decimal / sizeof (WCHAR), - thousand, sizeof thousand / sizeof (WCHAR)); + FillNumberFmt(&fmt, decimal, ARRAY_SIZE(decimal), thousand, ARRAY_SIZE(thousand)); fmt.NumDigits = decimals; return GetNumberFormatW(LOCALE_USER_DEFAULT, 0, buf, &fmt, pszBuf, cchBuf); } @@ -2124,7 +2122,7 @@ INT WINAPI StrFromTimeIntervalA(LPSTR lpszStr, UINT cchMax, DWORD dwMS, if (lpszStr && cchMax) { WCHAR szBuff[128]; - StrFromTimeIntervalW(szBuff, sizeof(szBuff)/sizeof(WCHAR), dwMS, iDigits); + StrFromTimeIntervalW(szBuff, ARRAY_SIZE(szBuff), dwMS, iDigits); WideCharToMultiByte(CP_ACP,0,szBuff,-1,lpszStr,cchMax,0,0); } return iRet; @@ -2420,7 +2418,7 @@ LPWSTR WINAPI StrFormatByteSizeW(LONGLONG llBytes, LPWSTR lpszDest, UINT cchMax) /* Note that if this loop completes without finding a match, i will be * pointing at the last entry, which is a catch all for > 1000 PB */ - while (i < sizeof(bfFormats) / sizeof(SHLWAPI_BYTEFORMATS) - 1) + while (i < ARRAY_SIZE(bfFormats) - 1) { if (llBytes < bfFormats[i].dLimit) break; @@ -2455,7 +2453,7 @@ LPSTR WINAPI StrFormatByteSize64A(LONGLONG llBytes, LPSTR lpszDest, UINT cchMax) { WCHAR wszBuff[32]; - StrFormatByteSizeW(llBytes, wszBuff, sizeof(wszBuff)/sizeof(WCHAR)); + StrFormatByteSizeW(llBytes, wszBuff, ARRAY_SIZE(wszBuff)); if (lpszDest) WideCharToMultiByte(CP_ACP, 0, wszBuff, -1, lpszDest, cchMax, 0, 0); diff --git a/dlls/shlwapi/url.c b/dlls/shlwapi/url.c index 92b4a216cba..8313b98fb2f 100644 --- a/dlls/shlwapi/url.c +++ b/dlls/shlwapi/url.c @@ -136,7 +136,7 @@ static DWORD get_scheme_code(LPCWSTR scheme, DWORD scheme_len) { unsigned int i; - for(i=0; i < sizeof(shlwapi_schemes)/sizeof(shlwapi_schemes[0]); i++) { + for(i = 0; i < ARRAY_SIZE(shlwapi_schemes); i++) { if(scheme_len == strlenW(shlwapi_schemes[i].scheme_name) && !memicmpW(scheme, shlwapi_schemes[i].scheme_name, scheme_len)) return shlwapi_schemes[i].scheme_number; @@ -182,8 +182,7 @@ HRESULT WINAPI ParseURLA(LPCSTR x, PARSEDURLA *y) y->pszSuffix = ptr+1; y->cchSuffix = strlen(y->pszSuffix); - len = MultiByteToWideChar(CP_ACP, 0, x, ptr-x, - scheme, sizeof(scheme)/sizeof(WCHAR)); + len = MultiByteToWideChar(CP_ACP, 0, x, ptr-x, scheme, ARRAY_SIZE(scheme)); y->nScheme = get_scheme_code(scheme, len); return S_OK; @@ -331,7 +330,7 @@ HRESULT WINAPI UrlCanonicalizeW(LPCWSTR pszUrl, LPWSTR pszCanonicalized, return E_OUTOFMEMORY; } - is_file_url = !strncmpW(wszFile, url, sizeof(wszFile)/sizeof(WCHAR)); + is_file_url = !strncmpW(wszFile, url, ARRAY_SIZE(wszFile)); if ((nByteLen >= sizeof(wszHttp) && !memcmp(wszHttp, url, sizeof(wszHttp))) || is_file_url) @@ -362,7 +361,7 @@ HRESULT WINAPI UrlCanonicalizeW(LPCWSTR pszUrl, LPWSTR pszCanonicalized, if(url[1] == ':') { /* Assume path */ memcpy(wk2, wszFilePrefix, sizeof(wszFilePrefix)); - wk2 += sizeof(wszFilePrefix)/sizeof(WCHAR); + wk2 += ARRAY_SIZE(wszFilePrefix); if (dwFlags & (URL_FILE_USE_PATHURL | URL_WININET_COMPATIBILITY)) { slash = '\\'; @@ -397,7 +396,7 @@ HRESULT WINAPI UrlCanonicalizeW(LPCWSTR pszUrl, LPWSTR pszCanonicalized, if((dwFlags & URL_FILE_USE_PATHURL) && nByteLen >= sizeof(wszLocalhost) && is_file_url && !memcmp(wszLocalhost, wk1, sizeof(wszLocalhost))){ - wk1 += sizeof(wszLocalhost)/sizeof(WCHAR); + wk1 += ARRAY_SIZE(wszLocalhost); while(*wk1 == '\\' && (dwFlags & URL_FILE_USE_PATHURL)) wk1++; } @@ -954,7 +953,7 @@ HRESULT WINAPI UrlEscapeA( WCHAR *escapedW = bufW; UNICODE_STRING urlW; HRESULT ret; - DWORD lenW = sizeof(bufW)/sizeof(WCHAR), lenA; + DWORD lenW = ARRAY_SIZE(bufW), lenA; if (!pszEscaped || !pcchEscaped || !*pcchEscaped) return E_INVALIDARG; @@ -1162,7 +1161,7 @@ HRESULT WINAPI UrlEscapeW( len = 0; if((int_flags & WINE_URL_COLLAPSE_SLASHES) && src == pszUrl + parsed_url.cchProtocol + 1) { - int localhost_len = sizeof(localhost)/sizeof(WCHAR) - 1; + int localhost_len = ARRAY_SIZE(localhost) - 1; while(cur == '/' || cur == '\\') { slashes++; cur = *++src; @@ -2442,7 +2441,7 @@ HRESULT WINAPI UrlCreateFromPathA(LPCSTR pszPath, LPSTR pszUrl, LPDWORD pcchUrl, WCHAR *urlW = bufW; UNICODE_STRING pathW; HRESULT ret; - DWORD lenW = sizeof(bufW)/sizeof(WCHAR), lenA; + DWORD lenW = ARRAY_SIZE(bufW), lenA; if(!RtlCreateUnicodeStringFromAsciiz(&pathW, pszPath)) return E_INVALIDARG; @@ -2545,13 +2544,13 @@ HRESULT WINAPI MLBuildResURLA(LPCSTR lpszLibName, HMODULE hMod, DWORD dwFlags, HRESULT hRet; if (lpszLibName) - MultiByteToWideChar(CP_ACP, 0, lpszLibName, -1, szLibName, sizeof(szLibName)/sizeof(WCHAR)); + MultiByteToWideChar(CP_ACP, 0, lpszLibName, -1, szLibName, ARRAY_SIZE(szLibName)); if (lpszRes) - MultiByteToWideChar(CP_ACP, 0, lpszRes, -1, szRes, sizeof(szRes)/sizeof(WCHAR)); + MultiByteToWideChar(CP_ACP, 0, lpszRes, -1, szRes, ARRAY_SIZE(szRes)); - if (dwDestLen > sizeof(szLibName)/sizeof(WCHAR)) - dwDestLen = sizeof(szLibName)/sizeof(WCHAR); + if (dwDestLen > ARRAY_SIZE(szLibName)) + dwDestLen = ARRAY_SIZE(szLibName); hRet = MLBuildResURLW(lpszLibName ? szLibName : NULL, hMod, dwFlags, lpszRes ? szRes : NULL, lpszDest ? szDest : NULL, dwDestLen); @@ -2592,8 +2591,8 @@ HRESULT WINAPI MLBuildResURLW(LPCWSTR lpszLibName, HMODULE hMod, DWORD dwFlags, WCHAR szBuff[MAX_PATH]; DWORD len; - len = GetModuleFileNameW(hMod, szBuff, sizeof(szBuff)/sizeof(WCHAR)); - if (len && len < sizeof(szBuff)/sizeof(WCHAR)) + len = GetModuleFileNameW(hMod, szBuff, ARRAY_SIZE(szBuff)); + if (len && len < ARRAY_SIZE(szBuff)) { DWORD dwPathLen = strlenW(szBuff) + 1;