From af403bd34f91684aecd6fe06434475ce54a04b08 Mon Sep 17 00:00:00 2001 From: Eric Pouech Date: Mon, 14 Feb 2022 10:28:24 +0100 Subject: [PATCH] gdiplus: Get rid of gcc11 warnings (-Warray-bounds). Signed-off-by: Eric Pouech Signed-off-by: Esme Povirk Signed-off-by: Alexandre Julliard --- 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 6be6c4ff216..b899619e1d3 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);