Nikolay Sivov (@nsivov) commented about dlls/comctl32/commctrl.c:
- if (minWChars > (DWORD)-1 / sizeof(WCHAR))
return FALSE;
- minSizeInBytes = minWChars * sizeof(WCHAR);
- if (unicodeBuffer->sizeInBytes >= minSizeInBytes)
return TRUE;
- address = unicodeBuffer->address;
- address = address ? ReAlloc(address, minSizeInBytes) : Alloc(minSizeInBytes);
- if (!address)
return FALSE;
- *unicodeBuffer = (COMCTL32_UnicodeBuffer) {
.address = address,
.sizeInBytes = minSizeInBytes
- };
- return TRUE;
+}
We have helpers called *_array_reserve() in various wine modules. I'd rather you use that pattern instead.