diff options
author | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2018-06-21 12:35:29 +0200 |
---|---|---|
committer | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2018-06-21 12:29:29 +0000 |
commit | 3f01dc199560e7d31f8941dc81e99a17d2e95cdf (patch) | |
tree | 3ae97c74ae3c5faf58f8d09624ac83a3fe51b248 /src/plugins/styles | |
parent | 22e9ff9c164d9912fcbe7987f4d39e467b0a600f (diff) |
QWindowsFontDatabase/QWindowsXPStyle: Fix compilation with g++ 8.1/MinGW
Silence warnings about copying/clearing memory types which g++
considers non-trivial, for example:
windows\qwindowsfontdatabase.cpp:1003:75: error: 'void* memcpy(void*, const void*, size_t)' copying an object of non-trivial type 'class QChar' from an array of 'const ushort' {aka 'const short unsigned int'} [-Werror=class-memaccess]
memcpy(faceNamePtr, faceName.utf16(), sizeof(wchar_t) * nameLength);
qwindowsxpstyle.cpp:946:46: error: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct ThemeMapData'; use assignment or value-initialization instead [-Werror=class-memaccess]
memset(&data, 0, sizeof(data));
^
qwindowsxpstyle.cpp:1053:38: error: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct ThemeMapData'; use assignment or value-initialization instead [-Werror=class-memaccess]
memset(&data, 0, sizeof(data));
by introducing a cast.
Task-number: QTBUG-68742
Task-number: QTQAINFRA-2095
Change-Id: I160eb5fc7b64a2bc404e1fa61d306af2662d1252
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Diffstat (limited to 'src/plugins/styles')
-rw-r--r-- | src/plugins/styles/windowsvista/qwindowsxpstyle.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/plugins/styles/windowsvista/qwindowsxpstyle.cpp b/src/plugins/styles/windowsvista/qwindowsxpstyle.cpp index 9d2e770191..36a8afb453 100644 --- a/src/plugins/styles/windowsvista/qwindowsxpstyle.cpp +++ b/src/plugins/styles/windowsvista/qwindowsxpstyle.cpp @@ -943,7 +943,7 @@ bool QWindowsXPStylePrivate::drawBackgroundThruNativeBuffer(XPThemeData &themeDa if (!isCached) { // SHORTCUT: If the part's state has no data, cache it for NOOP later if (!stateHasData) { - memset(&data, 0, sizeof(data)); + memset(static_cast<void *>(&data), 0, sizeof(data)); data.dataValid = true; alphaCache.insert(key, data); return true; @@ -1050,7 +1050,7 @@ bool QWindowsXPStylePrivate::drawBackgroundThruNativeBuffer(XPThemeData &themeDa // Add to theme part cache if (!isCached) { - memset(&data, 0, sizeof(data)); + memset(static_cast<void *>(&data), 0, sizeof(data)); data.dataValid = true; data.partIsTransparent = partIsTransparent; data.alphaType = alphaType; |