Eric Pouech : windows.globalization: Use a flexible array member for hstring_vector.
Alexandre Julliard
julliard at winehq.org
Thu Mar 24 17:46:44 CDT 2022
Module: wine
Branch: master
Commit: e47fe700840f534e99228efd88a6d812225ee953
URL: https://source.winehq.org/git/wine.git/?a=commit;h=e47fe700840f534e99228efd88a6d812225ee953
Author: Eric Pouech <eric.pouech at gmail.com>
Date: Thu Mar 24 09:54:23 2022 +0100
windows.globalization: Use a flexible array member for hstring_vector.
GCC 11 complains about accessing struct hstring_vector (-Warray-bounds)
when the allocation is made for a 0-sized vector. Using a C99 flexible
array member gets rid of the warnings.
Signed-off-by: Eric Pouech <eric.pouech at gmail.com>
Signed-off-by: Rémi Bernon <rbernon at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/windows.globalization/main.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/dlls/windows.globalization/main.c b/dlls/windows.globalization/main.c
index 3e5a59bde14..21ea2908679 100644
--- a/dlls/windows.globalization/main.c
+++ b/dlls/windows.globalization/main.c
@@ -54,9 +54,11 @@ struct hstring_vector
LONG ref;
ULONG count;
- HSTRING values[1];
+ HSTRING values[];
};
+C_ASSERT(sizeof(struct hstring_vector) == offsetof(struct hstring_vector, values[0]));
+
static inline struct hstring_vector *impl_from_IVectorView_HSTRING(IVectorView_HSTRING *iface)
{
return CONTAINING_RECORD(iface, struct hstring_vector, IVectorView_HSTRING_iface);
More information about the wine-cvs
mailing list