[PATCH 5/6] dlls/gdiplus: get rid of gcc11 warnings (-Warray-bounds)
Eric Pouech
eric.pouech at gmail.com
Mon Feb 14 03:28:24 CST 2022
Signed-off-by: Eric Pouech <eric.pouech at gmail.com>
---
dlls/gdiplus/image.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/dlls/gdiplus/image.c b/dlls/gdiplus/image.c
index a7297047308..73736d65ca3 100644
--- a/dlls/gdiplus/image.c
+++ b/dlls/gdiplus/image.c
@@ -4107,6 +4107,8 @@ static GpStatus decode_image_tiff(IStream* stream, GpImage **image)
return decode_image_wic(stream, &GUID_ContainerFormatTiff, NULL, image);
}
+C_ASSERT(offsetof(WmfPlaceableFileHeader, Key) == 0);
+
static GpStatus load_wmf(IStream *stream, GpMetafile **metafile)
{
WmfPlaceableFileHeader pfh;
@@ -4123,7 +4125,8 @@ static GpStatus load_wmf(IStream *stream, GpMetafile **metafile)
if (hr != S_OK || size != sizeof(mh))
return GenericError;
- if (((WmfPlaceableFileHeader *)&mh)->Key == WMF_PLACEABLE_KEY)
+ /* detect whether stream starts with a WmfPlaceablefileheader */
+ if (*(UINT32 *)&mh == WMF_PLACEABLE_KEY)
{
seek.QuadPart = 0;
hr = IStream_Seek(stream, seek, STREAM_SEEK_SET, NULL);
More information about the wine-devel
mailing list