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.
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/6737#note_103127