You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
37 lines
2.1 KiB
37 lines
2.1 KiB
diff -dur old/qtbase/src/plugins/platforms/windows/qwindowscontext.h new/qtbase/src/plugins/platforms/windows/qwindowscontext.h |
|
--- old/qtbase/src/plugins/platforms/windows/qwindowscontext.h |
|
+++ new/qtbase/src/plugins/platforms/windows/qwindowscontext.h |
|
@@ -136,10 +136,18 @@ |
|
inline void init(); |
|
|
|
typedef HRESULT (WINAPI *SHCreateItemFromParsingName)(PCWSTR, IBindCtx *, const GUID&, void **); |
|
+#if defined(Q_CC_MINGW) && (!defined(__MINGW64_VERSION_MAJOR) || __MINGW64_VERSION_MAJOR < 3) |
|
+ typedef HRESULT (WINAPI *SHGetKnownFolderIDList)(const GUID &, DWORD, HANDLE, ITEMIDLIST **); |
|
+#else |
|
typedef HRESULT (WINAPI *SHGetKnownFolderIDList)(const GUID &, DWORD, HANDLE, PIDLIST_ABSOLUTE *); |
|
+#endif |
|
typedef HRESULT (WINAPI *SHGetStockIconInfo)(int , int , _SHSTOCKICONINFO *); |
|
typedef HRESULT (WINAPI *SHGetImageList)(int, REFIID , void **); |
|
+#if defined(Q_CC_MINGW) && (!defined(__MINGW64_VERSION_MAJOR) || __MINGW64_VERSION_MAJOR < 3) |
|
+ typedef HRESULT (WINAPI *SHCreateItemFromIDList)(const ITEMIDLIST *, REFIID, void **); |
|
+#else |
|
typedef HRESULT (WINAPI *SHCreateItemFromIDList)(PCIDLIST_ABSOLUTE, REFIID, void **); |
|
+#endif |
|
|
|
SHCreateItemFromParsingName sHCreateItemFromParsingName; |
|
SHGetKnownFolderIDList sHGetKnownFolderIDList; |
|
diff -dur old/qtbase/src/plugins/platforms/windows/qwindowsdialoghelpers.cpp new/qtbase/src/plugins/platforms/windows/qwindowsdialoghelpers.cpp |
|
--- old/qtbase/src/plugins/platforms/windows/qwindowsdialoghelpers.cpp |
|
+++ new/qtbase/src/plugins/platforms/windows/qwindowsdialoghelpers.cpp |
|
@@ -1016,7 +1016,11 @@ |
|
qWarning() << __FUNCTION__ << ": Invalid CLSID: " << url.path(); |
|
return Q_NULLPTR; |
|
} |
|
+#if defined(Q_CC_MINGW) && (!defined(__MINGW64_VERSION_MAJOR) || __MINGW64_VERSION_MAJOR < 3) |
|
+ ITEMIDLIST *idList; |
|
+#else |
|
PIDLIST_ABSOLUTE idList; |
|
+#endif |
|
HRESULT hr = QWindowsContext::shell32dll.sHGetKnownFolderIDList(uuid, 0, 0, &idList); |
|
if (FAILED(hr)) { |
|
qErrnoWarning("%s: SHGetKnownFolderIDList(%s)) failed", __FUNCTION__, qPrintable(url.toString()));
|
|
|