aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cmake/modules/FindCrossGUID.cmake6
-rw-r--r--cmake/modules/FindGIF.cmake12
-rw-r--r--cmake/modules/FindMariaDBClient.cmake4
-rw-r--r--cmake/scripts/windows/ArchSetup.cmake7
-rw-r--r--cmake/scripts/windowsstore/ArchSetup.cmake1
-rw-r--r--cmake/scripts/windowsstore/Macros.cmake2
-rw-r--r--project/BuildDependencies/scripts/0_package.native-win32.list8
-rw-r--r--project/BuildDependencies/scripts/0_package.target-win10-arm.list66
-rw-r--r--project/BuildDependencies/scripts/0_package.target-win10-win32.list61
-rw-r--r--project/BuildDependencies/scripts/0_package.target-win10-x64.list61
-rw-r--r--project/BuildDependencies/scripts/0_package.target-win32.list75
-rw-r--r--project/BuildDependencies/scripts/0_package.target-x64.list69
-rw-r--r--tools/depends/native/JsonSchemaBuilder/win32/JsonSchemaBuilder.vcxproj5
-rw-r--r--tools/depends/native/TexturePacker/src/Win32/TexturePacker.vcxproj19
-rw-r--r--tools/depends/native/TexturePacker/src/Win32/version.rcbin5578 -> 5582 bytes
-rw-r--r--xbmc/guilib/TextureBundleXBT.cpp4
-rw-r--r--xbmc/interfaces/python/PythonInvoker.cpp7
-rw-r--r--xbmc/platform/win10/storage/Win10StorageProvider.cpp4
-rw-r--r--xbmc/rendering/dx/DeviceResources.h1
-rw-r--r--xbmc/utils/StringUtils.cpp8
-rw-r--r--xbmc/windowing/windows/WinSystemWin32DX.cpp35
-rw-r--r--xbmc/windowing/windows/WinSystemWin32DX.h3
22 files changed, 243 insertions, 215 deletions
diff --git a/cmake/modules/FindCrossGUID.cmake b/cmake/modules/FindCrossGUID.cmake
index d84e33ba4c..613c2a4a3f 100644
--- a/cmake/modules/FindCrossGUID.cmake
+++ b/cmake/modules/FindCrossGUID.cmake
@@ -46,7 +46,7 @@ if(ENABLE_INTERNAL_CROSSGUID)
set(CROSSGUID_LIBRARIES ${CROSSGUID_LIBRARY})
set(CROSSGUID_INCLUDE_DIRS ${CROSSGUID_INCLUDE_DIR})
else()
- find_path(CROSSGUID_INCLUDE_DIR NAMES guid.h)
+ find_path(CROSSGUID_INCLUDE_DIR NAMES guid.hpp guid.h)
find_library(CROSSGUID_LIBRARY_RELEASE NAMES crossguid)
find_library(CROSSGUID_LIBRARY_DEBUG NAMES crossguidd)
@@ -62,6 +62,10 @@ else()
set(CROSSGUID_LIBRARIES ${CROSSGUID_LIBRARY})
set(CROSSGUID_INCLUDE_DIRS ${CROSSGUID_INCLUDE_DIR})
+ if(EXISTS "${CROSSGUID_INCLUDE_DIR}/guid.hpp")
+ set(CROSSGUID_DEFINITIONS -DHAVE_NEW_CROSSGUID)
+ endif()
+
add_custom_target(crossguid)
set_target_properties(crossguid PROPERTIES FOLDER "External Projects")
endif()
diff --git a/cmake/modules/FindGIF.cmake b/cmake/modules/FindGIF.cmake
index 1c616e0ab1..7564a58bc7 100644
--- a/cmake/modules/FindGIF.cmake
+++ b/cmake/modules/FindGIF.cmake
@@ -16,15 +16,9 @@
find_path(GIF_INCLUDE_DIR gif_lib.h)
include(FindPackageHandleStandardArgs)
-if(NOT WIN32)
- find_library(GIF_LIBRARY NAMES gif)
- find_package_handle_standard_args(GIF
- REQUIRED_VARS GIF_LIBRARY GIF_INCLUDE_DIR)
-else()
- # Dynamically loaded DLL
- find_package_handle_standard_args(GIF
- REQUIRED_VARS GIF_INCLUDE_DIR)
-endif()
+find_library(GIF_LIBRARY NAMES gif)
+find_package_handle_standard_args(GIF
+ REQUIRED_VARS GIF_LIBRARY GIF_INCLUDE_DIR)
if(GIF_FOUND)
set(GIF_LIBRARIES ${GIF_LIBRARY})
diff --git a/cmake/modules/FindMariaDBClient.cmake b/cmake/modules/FindMariaDBClient.cmake
index 7530ab5021..374aeebbb2 100644
--- a/cmake/modules/FindMariaDBClient.cmake
+++ b/cmake/modules/FindMariaDBClient.cmake
@@ -28,11 +28,11 @@ endif()
find_path(MARIADBCLIENT_INCLUDE_DIR NAMES mariadb/mysql.h mariadb/server/mysql.h
PATHS ${PC_MARIADBCLIENT_INCLUDEDIR})
-find_library(MARIADBCLIENT_LIBRARY_RELEASE NAMES mariadbclient mariadb
+find_library(MARIADBCLIENT_LIBRARY_RELEASE NAMES mariadbclient mariadb libmariadb
PATHS ${PC_MARIADBCLIENT_LIBDIR}
PATH_SUFFIXES mariadb
${EXTRA_FIND_ARGS})
-find_library(MARIADBCLIENT_LIBRARY_DEBUG NAMES mariadbclient mariadb
+find_library(MARIADBCLIENT_LIBRARY_DEBUG NAMES mariadbclient mariadb libmariadbd
PATHS ${PC_MARIADBCLIENT_LIBDIR}
PATH_SUFFIXES mariadb
${EXTRA_FIND_ARGS})
diff --git a/cmake/scripts/windows/ArchSetup.cmake b/cmake/scripts/windows/ArchSetup.cmake
index 309703be72..00f92836d8 100644
--- a/cmake/scripts/windows/ArchSetup.cmake
+++ b/cmake/scripts/windows/ArchSetup.cmake
@@ -45,12 +45,9 @@ set(SYSTEM_DEFINES -DWIN32_LEAN_AND_MEAN -DNOMINMAX -DHAS_DX -D__STDC_CONSTANT_M
-DPLT_HTTP_DEFAULT_USER_AGENT="UPnP/1.0 DLNADOC/1.50 Kodi"
-DPLT_HTTP_DEFAULT_SERVER="UPnP/1.0 DLNADOC/1.50 Kodi"
-DUNICODE -D_UNICODE
+ -DFRIBIDI_STATIC
$<$<CONFIG:Debug>:-DD3D_DEBUG_INFO>)
-if(${ARCH} STREQUAL win32)
- list(APPEND SYSTEM_DEFINES $<$<CONFIG:Debug>:-D_ITERATOR_DEBUG_LEVEL=0>)
-endif()
-
# Additional SYSTEM_DEFINES
list(APPEND SYSTEM_DEFINES -DHAS_WIN32_NETWORK -DHAS_FILESYSTEM_SMB)
@@ -87,7 +84,7 @@ foreach(_lib ${_nodefaultlibs_DEBUG})
endforeach()
# DELAYLOAD option
-set(_delayloadlibs zlib.dll libmysql.dll libxslt.dll dnssd.dll dwmapi.dll sqlite3.dll
+set(_delayloadlibs zlib.dll libmariadb.dll libxslt.dll dnssd.dll dwmapi.dll sqlite3.dll
d3dcompiler_47.dll)
foreach(_lib ${_delayloadlibs})
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /DELAYLOAD:\"${_lib}\"")
diff --git a/cmake/scripts/windowsstore/ArchSetup.cmake b/cmake/scripts/windowsstore/ArchSetup.cmake
index 987f9c2f2e..2d9fc5d3de 100644
--- a/cmake/scripts/windowsstore/ArchSetup.cmake
+++ b/cmake/scripts/windowsstore/ArchSetup.cmake
@@ -71,6 +71,7 @@ set(SYSTEM_DEFINES -DWIN32_LEAN_AND_MEAN -DNOMINMAX -DHAS_DX -D__STDC_CONSTANT_M
-DPLT_HTTP_DEFAULT_USER_AGENT="UPnP/1.0 DLNADOC/1.50 Kodi"
-DPLT_HTTP_DEFAULT_SERVER="UPnP/1.0 DLNADOC/1.50 Kodi"
-DUNICODE -D_UNICODE
+ -DFRIBIDI_STATIC
$<$<CONFIG:Debug>:-DD3D_DEBUG_INFO>)
# Additional SYSTEM_DEFINES
diff --git a/cmake/scripts/windowsstore/Macros.cmake b/cmake/scripts/windowsstore/Macros.cmake
index de89c62a7d..c8cb9600a1 100644
--- a/cmake/scripts/windowsstore/Macros.cmake
+++ b/cmake/scripts/windowsstore/Macros.cmake
@@ -112,7 +112,7 @@ endmacro()
macro(winstore_append_props target)
# exclude debug dlls from packaging
- set(DEBUG_DLLS zlibd.dll freetyped.dll sqlite3d.dll)
+ set(DEBUG_DLLS zlibd.dll)
foreach(_dll ${DEBUG_DLLS})
if (DEBUG_DLLS_EXCLUDE)
list(APPEND DEBUG_DLLS_EXCLUDE "\;$(BuildRootPath)/dlls/${_dll}")
diff --git a/project/BuildDependencies/scripts/0_package.native-win32.list b/project/BuildDependencies/scripts/0_package.native-win32.list
index 97ddd02630..1816000f50 100644
--- a/project/BuildDependencies/scripts/0_package.native-win32.list
+++ b/project/BuildDependencies/scripts/0_package.native-win32.list
@@ -7,8 +7,8 @@
; -> ...
;PLEASE KEEP THIS LIST IN ALPHABETICAL ORDER!
doxygen-1.8.2-win32.7z
-flatc-1.9.0-Win32-v141.7z
-jsonschemabuilder-1.0.0-win32-3.7z
-swig-3.0.10-win32.7z
-texturepacker-1.1.1-win32.7z
+flatc-1.11.0-win32-v141-20200105.7z
+JsonSchemaBuilder-win32-v141-20200105.7z
+swig-4.0.1-win32-v141-20200105.7z
+TexturePacker-win32-v141-20200105.7z
vswhere-2.2.11-win32.7z
diff --git a/project/BuildDependencies/scripts/0_package.target-win10-arm.list b/project/BuildDependencies/scripts/0_package.target-win10-arm.list
index ac82ad88b4..879c811bd1 100644
--- a/project/BuildDependencies/scripts/0_package.target-win10-arm.list
+++ b/project/BuildDependencies/scripts/0_package.target-win10-arm.list
@@ -1,37 +1,39 @@
; package.list should contain all file names of packages which are already in the "new" package format (the package contains the paths to the libraries
; and headers relative to the XBMC root directory, stored in a zip container)
-; example sqlite-3.7.12.1-win32.7z:
+; example sqlite-3.7.12.1-arm.7z:
; -> (package name)\(relative path to file)
-; -> sqlite-3.7.12.1-win32\project\BuildDependencies\lib\sqlite3.lib
-; -> sqlite-3.7.12.1-win32\system\sqlite3.dll
+; -> sqlite-3.7.12.1-arm\project\BuildDependencies\lib\sqlite3.lib
+; -> sqlite-3.7.12.1-arm\system\sqlite3.dll
; -> ...
;PLEASE KEEP THIS LIST IN ALPHABETICAL ORDER!
-crossguid-fef89a4-win10-ARM-v140.7z
-curl-7.59.0-win10-ARM-v141.7z
-flatbuffers-1.9.0.7z
-fmt-3.0.1-win10-ARM-v140.7z
-freetype-2.8-win10-ARM-v140.7z
-fstrcmp-0.7-win10-ARM-v141.7z
-lcms2-2.8-win10-ARM-v140.7z
-libaacs-0.9.0-win10-ARM-v141.7z
-libass-0.13.6-win10-ARM-v140.7z
-libbluray-1.0.2-win10-ARM-v141.7z
-libcdio-0.94-win10-ARM-v140.7z
-libfribidi-0.19.7-win10-ARM-v140.7z
-libiconv-1.15-win10-ARM-v141.7z
-libmicrohttpd-0.9.55-win10-ARM-v140.7z
-libnfs-3.0.0-win10-ARM-v141.7z
-libplist-1.12-win10-ARM-v140.7z
-libxml2-2.9.4-win10-ARM-v141.7z
-libxslt-1.1.29-win10-ARM-v140.7z
-lzo2-2.09-win10-ARM-v140.7z
-mini_wdk-10.0.14393.0-win32.7z
-mysql-connector-c-6.1.9-win10-ARM-v141.7z
-openssl-1.0.2o-win10-ARM-v141.7z
-pcre-8.40-win10-ARM-v141.7z
-rapidjson-1.1.0-win32.7z
-shairplay-ce80e00-win10-ARM-v140.7z
-sqlite-3170000-win10-ARM-v140.7z
-taglib-1.11.1-win10-ARM-v140.7z
-tinyxml-2.6.2-win10-ARM-v140.7z
-zlib-1.2.11-win10-ARM-v140.7z
+crossguid-0.2.2-win10-arm-v141-20200105.7z
+curl-7.67.0-win10-arm-v141-20200105.7z
+flatbuffers-1.11.0-20200105.7z
+fmt-6.1.2-win10-arm-v141-20200105.7z
+freetype-2.10.1-win10-arm-v141-20200105.7z
+fstrcmp-0.7-win10-arm-v141-20200105.7z
+lcms2-2.9-win10-arm-v141-20200105.7z
+libaacs-0.9.0-win10-arm-v141-20200105.7z
+libass-0.14.0-win10-arm-v141-20200105.7z
+libbdplus-0.1.2-win10-arm-v141-20200105.7z
+libbluray-1.1.2-win10-arm-v141-20200105.7z
+libcdio-2.1.0-win10-arm-v141-20200105.7z
+libfribidi-1.0.8-win10-arm-v141-20200105.7z
+libiconv-1.16-win10-arm-v141-20200105.7z
+libmicrohttpd-0.9.69-win10-arm-v141-20200105.7z
+libnfs-4.0.0-win10-arm-v141-20200105.7z
+libxml2-2.9.9-win10-arm-v141-20200105.7z
+libxslt-1.1.34-win10-arm-v141-20200105.7z
+lzo2-2.10-win10-arm-v141-20200105.7z
+mariadb-connector-c-3.1.6-win10-arm-v141-20200105.7z
+miniwdk-10.0.17763-20200105.7z
+openssl-1.1.1d-win10-arm-v141-20200105.7z
+pcre-8.43-win10-arm-v141-20200105.7z
+pillow-6.2.1-win10-arm-v141-20200105.7z
+pycryptodome-3.9.4-win10-arm-v141-20200105.7z
+python-3.7.5-win10-arm-v141-20200105.7z
+rapidjson-1.1.0-20200105.7z
+sqlite-3300100-win10-arm-v141-20200105.7z
+taglib-1.11.1-win10-arm-v141-20200105.7z
+tinyxml-2.6.2-win10-arm-v141-20200105.7z
+zlib-1.2.11-win10-arm-v141-20200105.7z
diff --git a/project/BuildDependencies/scripts/0_package.target-win10-win32.list b/project/BuildDependencies/scripts/0_package.target-win10-win32.list
index e1f4690872..40980d56c7 100644
--- a/project/BuildDependencies/scripts/0_package.target-win10-win32.list
+++ b/project/BuildDependencies/scripts/0_package.target-win10-win32.list
@@ -6,33 +6,34 @@
; -> sqlite-3.7.12.1-win32\system\sqlite3.dll
; -> ...
;PLEASE KEEP THIS LIST IN ALPHABETICAL ORDER!
-crossguid-fef89a4-win10-Win32-v140.7z
-curl-7.59.0-win10-Win32-v141.7z
-flatbuffers-1.9.0.7z
-fmt-3.0.1-win10-Win32-v140.7z
-freetype-2.8-win10-Win32-v140.7z
-fstrcmp-0.7-win10-Win32-v141.7z
-lcms2-2.8-win10-Win32-v140.7z
-libaacs-0.9.0-win10-Win32-v141.7z
-libass-0.13.6-win10-Win32-v140.7z
-libbluray-1.0.2-win10-Win32-v141.7z
-libcdio-0.94-win10-Win32-v140.7z
-libfribidi-0.19.7-win10-Win32-v140.7z
-libiconv-1.15-win10-Win32-v141.7z
-libmicrohttpd-0.9.55-win10-Win32-v140.7z
-libnfs-3.0.0-win10-Win32-v141.7z
-libplist-1.12-win10-Win32-v140.7z
-libxml2-2.9.4-win10-Win32-v141.7z
-libxslt-1.1.29-win10-Win32-v140.7z
-lzo2-2.09-win10-Win32-v140.7z
-mini_wdk-10.0.14393.0-win32.7z
-mysql-connector-c-6.1.9-win10-Win32-v141.7z
-openssl-1.1.1b-win10-Win32-v141.7z
-pcre-8.40-win10-Win32-v141.7z
-python3-3.7.2-win10-Win32-v141.7z
-rapidjson-1.1.0-win32.7z
-shairplay-ce80e00-win10-Win32-v140.7z
-sqlite-3170000-win10-Win32-v140.7z
-taglib-1.11.1-win10-Win32-v140.7z
-tinyxml-2.6.2-win10-Win32-v140.7z
-zlib-1.2.11-win10-Win32-v140.7z
+crossguid-0.2.2-win10-win32-v141-20200105.7z
+curl-7.67.0-win10-win32-v141-20200105.7z
+flatbuffers-1.11.0-20200105.7z
+fmt-6.1.2-win10-win32-v141-20200105.7z
+freetype-2.10.1-win10-win32-v141-20200105.7z
+fstrcmp-0.7-win10-win32-v141-20200105.7z
+lcms2-2.9-win10-win32-v141-20200105.7z
+libaacs-0.9.0-win10-win32-v141-20200105.7z
+libass-0.14.0-win10-win32-v141-20200105.7z
+libbdplus-0.1.2-win10-win32-v141-20200105.7z
+libbluray-1.1.2-win10-win32-v141-20200105.7z
+libcdio-2.1.0-win10-win32-v141-20200105.7z
+libfribidi-1.0.8-win10-win32-v141-20200105.7z
+libiconv-1.16-win10-win32-v141-20200105.7z
+libmicrohttpd-0.9.69-win10-win32-v141-20200105.7z
+libnfs-4.0.0-win10-win32-v141-20200105.7z
+libxml2-2.9.9-win10-win32-v141-20200105.7z
+libxslt-1.1.34-win10-win32-v141-20200105.7z
+lzo2-2.10-win10-win32-v141-20200105.7z
+mariadb-connector-c-3.1.6-win10-win32-v141-20200105.7z
+miniwdk-10.0.17763-20200105.7z
+openssl-1.1.1d-win10-win32-v141-20200105.7z
+pcre-8.43-win10-win32-v141-20200105.7z
+pillow-6.2.1-win10-win32-v141-20200105.7z
+pycryptodome-3.9.4-win10-win32-v141-20200105.7z
+python-3.7.5-win10-win32-v141-20200105.7z
+rapidjson-1.1.0-20200105.7z
+sqlite-3300100-win10-win32-v141-20200105.7z
+taglib-1.11.1-win10-win32-v141-20200105.7z
+tinyxml-2.6.2-win10-win32-v141-20200105.7z
+zlib-1.2.11-win10-win32-v141-20200105.7z
diff --git a/project/BuildDependencies/scripts/0_package.target-win10-x64.list b/project/BuildDependencies/scripts/0_package.target-win10-x64.list
index 62fcf3448c..80a4fcd9e0 100644
--- a/project/BuildDependencies/scripts/0_package.target-win10-x64.list
+++ b/project/BuildDependencies/scripts/0_package.target-win10-x64.list
@@ -6,33 +6,34 @@
; -> sqlite-3.7.12.1-win32\system\sqlite3.dll
; -> ...
;PLEASE KEEP THIS LIST IN ALPHABETICAL ORDER!
-crossguid-fef89a4-win10-x64-v140.7z
-curl-7.59.0-win10-x64-v141.7z
-flatbuffers-1.9.0.7z
-fmt-3.0.1-win10-x64-v140.7z
-freetype-2.8-win10-x64-v140.7z
-fstrcmp-0.7-win10-x64-v141.7z
-lcms2-2.8-win10-x64-v140.7z
-libaacs-0.9.0-win10-x64-v141.7z
-libass-0.13.6-win10-x64-v140.7z
-libbluray-1.0.2-win10-x64-v141.7z
-libcdio-0.94-win10-x64-v140.7z
-libfribidi-0.19.7-win10-x64-v140.7z
-libiconv-1.15-win10-x64-v141.7z
-libmicrohttpd-0.9.55-win10-x64-v140.7z
-libnfs-3.0.0-win10-x64-v141.7z
-libplist-1.12-win10-x64-v140.7z
-libxml2-2.9.4-win10-x64-v141.7z
-libxslt-1.1.29-win10-x64-v140.7z
-lzo2-2.09-win10-x64-v140.7z
-mini_wdk-10.0.14393.0-win32.7z
-mysql-connector-c-6.1.9-win10-x64-v141.7z
-openssl-1.1.1b-win10-x64-v141.7z
-pcre-8.40-win10-x64-v141.7z
-python3-3.7.2-win10-x64-v141.7z
-rapidjson-1.1.0-win32.7z
-shairplay-ce80e00-win10-x64-v140.7z
-sqlite-3170000-win10-x64-v140.7z
-taglib-1.11.1-win10-x64-v140.7z
-tinyxml-2.6.2-win10-x64-v140.7z
-zlib-1.2.11-win10-x64-v140.7z
+crossguid-0.2.2-win10-x64-v141-20200105.7z
+curl-7.67.0-win10-x64-v141-20200105.7z
+flatbuffers-1.11.0-20200105.7z
+fmt-6.1.2-win10-x64-v141-20200105.7z
+freetype-2.10.1-win10-x64-v141-20200105.7z
+fstrcmp-0.7-win10-x64-v141-20200105.7z
+lcms2-2.9-win10-x64-v141-20200105.7z
+libaacs-0.9.0-win10-x64-v141-20200105.7z
+libass-0.14.0-win10-x64-v141-20200105.7z
+libbdplus-0.1.2-win10-x64-v141-20200105.7z
+libbluray-1.1.2-win10-x64-v141-20200105.7z
+libcdio-2.1.0-win10-x64-v141-20200105.7z
+libfribidi-1.0.8-win10-x64-v141-20200105.7z
+libiconv-1.16-win10-x64-v141-20200105.7z
+libmicrohttpd-0.9.69-win10-x64-v141-20200105.7z
+libnfs-4.0.0-win10-x64-v141-20200105.7z
+libxml2-2.9.9-win10-x64-v141-20200105.7z
+libxslt-1.1.34-win10-x64-v141-20200105.7z
+lzo2-2.10-win10-x64-v141-20200105.7z
+mariadb-connector-c-3.1.6-win10-x64-v141-20200105.7z
+miniwdk-10.0.17763-20200105.7z
+openssl-1.1.1d-win10-x64-v141-20200105.7z
+pcre-8.43-win10-x64-v141-20200105.7z
+pillow-6.2.1-win10-x64-v141-20200105.7z
+pycryptodome-3.9.4-win10-x64-v141-20200105.7z
+python-3.7.5-win10-x64-v141-20200105.7z
+rapidjson-1.1.0-20200105.7z
+sqlite-3300100-win10-x64-v141-20200105.7z
+taglib-1.11.1-win10-x64-v141-20200105.7z
+tinyxml-2.6.2-win10-x64-v141-20200105.7z
+zlib-1.2.11-win10-x64-v141-20200105.7z
diff --git a/project/BuildDependencies/scripts/0_package.target-win32.list b/project/BuildDependencies/scripts/0_package.target-win32.list
index 5f8f341b7e..15093f6798 100644
--- a/project/BuildDependencies/scripts/0_package.target-win32.list
+++ b/project/BuildDependencies/scripts/0_package.target-win32.list
@@ -6,39 +6,42 @@
; -> sqlite-3.7.12.1-win32\system\sqlite3.dll
; -> ...
;PLEASE KEEP THIS LIST IN ALPHABETICAL ORDER!
-crossguid-8f399e-win32-vc140-v3.7z
-curl-7.59.0-Win32-v140.7z
-dnssd-765.50.9-win32-vc140-v2.7z
-easyhook-2.7.5870.0-win32-vc140-v2.7z
-flatbuffers-1.9.0.7z
-fmt-3.0.1-win32-vc140.7z
-freetype-db5a22-win32-vc140.7z
-fstrcmp-0.7-Win32-v141.7z
-giflib-5.1.4-win32-vc140.7z
-lcms2-2.8-win32-vc140.7z
-libaacs-0.9.0-win32-vc140.7z
-libass-d18a5f1-win32-vc140.7z
-libbluray-1.0.2-win32-vc140.7z
-libcdio-0.9.3-win32-vc140.7z
-libcec-4.0.2-Win32-v141.7z
-libfribidi-0.19.2-win32.7z
-libiconv-1.14-win32-vc140-v2.7z
-libjpeg-turbo-1.4.90-win32-vc140.7z
-libmicrohttpd-0.9.55-win32-vc140.7z
-libnfs-3.0.0-Win32-v141.7z
-libplist-1.13.0-win32-vc140.7z
-libpng-1.6.21-win32-vc140.7z
-libxml2-2.9.4-win32-vc140-v2.7z
-libxslt-1.1.29-win32-vc140.7z
-lzo-2.09-win32-vc140-v3.7z
-mini_wdk-10.0.14393.0-win32.7z
-mysql-connector-c-6.1.6-win32-vc140-v2.7z
-openssl-1.1.1b-win10-Win32-v141.7z
-pcre-8.37-win32-vc140-v3.7z
-python3-3.7.1-Win32-v141.7z
-rapidjson-1.1.0-win32.7z
-shairplay-0.9.0-win32-vc140-v2.7z
-sqlite-3.10.2-win32-vc140.7z
-taglib-1.11.1_80df30-win32-vc140.7z
-tinyxmlstl-2.6.2-win32-vc140-v2.7z
-zlib-1.2.8-win32-vc140-v3.7z
+crossguid-0.2.2-win32-v141-20200105.7z
+curl-7.67.0-win32-v141-20200105.7z
+detours-64ec13-win32-v141-20200105.7z
+dnssd-878.260.1-win32-v141-20200105.7z
+flatbuffers-1.11.0-20200105.7z
+fmt-6.1.2-win32-v141-20200105.7z
+freetype-2.10.1-win32-v141-20200105.7z
+fstrcmp-0.7-win32-v141-20200105.7z
+giflib-5.2.1-win32-v141-20200105.7z
+lcms2-2.9-win32-v141-20200105.7z
+libaacs-0.9.0-win32-v141-20200105.7z
+libass-0.14.0-win32-v141-20200105.7z
+libbdplus-0.1.2-win32-v141-20200105.7z
+libbluray-1.1.2-win32-v141-20200105.7z
+libcdio-2.1.0-win32-v141-20200105.7z
+libcec-4.0.4-win32-v141-20200105.7z
+libfribidi-1.0.8-win32-v141-20200105.7z
+libiconv-1.16-win10-win32-v141-20200105.7z
+libjpeg-turbo-2.0.3-win32-v141-20200105.7z
+libmicrohttpd-0.9.69-win32-v141-20200105.7z
+libnfs-4.0.0-win32-v141-20200105.7z
+libplist-2.1.0-win32-v141-20200105.7z
+libpng-1.6.37-win32-v141-20200105.7z
+libxml2-2.9.9-win32-v141-20200105.7z
+libxslt-1.1.34-win32-v141-20200105.7z
+lzo2-2.10-win32-v141-20200105.7z
+mariadb-connector-c-3.1.6-win32-v141-20200105.7z
+miniwdk-10.0.17763-20200105.7z
+openssl-1.1.1d-win10-win32-v141-20200105.7z
+pcre-8.43-win32-v141-20200105.7z
+pillow-6.2.1-win32-v141-20200105.7z
+pycryptodome-3.9.4-win32-v141-20200105.7z
+python-3.7.5-win32-v141-20200105.7z
+rapidjson-1.1.0-20200105.7z
+shairplay-ce80e00-win32-v141-20200105.7z
+sqlite-3300100-win32-v141-20200105.7z
+taglib-1.11.1-win32-v141-20200105.7z
+tinyxml-2.6.2-win32-v141-20200105.7z
+zlib-1.2.11-win32-v141-20200105.7z
diff --git a/project/BuildDependencies/scripts/0_package.target-x64.list b/project/BuildDependencies/scripts/0_package.target-x64.list
index 1e4dcfdf3a..df9c76f4f1 100644
--- a/project/BuildDependencies/scripts/0_package.target-x64.list
+++ b/project/BuildDependencies/scripts/0_package.target-x64.list
@@ -6,36 +6,39 @@
; -> sqlite-3.7.12.1-win32\system\sqlite3.dll
; -> ...
;PLEASE KEEP THIS LIST IN ALPHABETICAL ORDER!
-crossguid-fef89a4-x64-vc140.7z
-curl-7.61.1-x64-v141.7z
-dnssd-765.50.9-x64-vc140-v2.7z
-easyhook-2.7.6035.0-x64-vc140.7z
-flatbuffers-1.9.0.7z
-fmt-3.0.1-x64-vc140.7z
-freetype-db5a224-x64-vc140.7z
-fstrcmp-0.7-x64-v141.7z
-lcms2-2.8-x64-vc140.7z
-libaacs-0.9.0-x64-vc140.7z
-libass-d18a5f1-x64-vc140.7z
-libbluray-1.0.2-x64-vc140.7z
-libcdio-0.94-x64-vc140.7z
-libcec-4.0.2-x64-vc140.7z
-libfribidi-0.19.7-x64-vc140.7z
-libiconv-1.15-x64-vc140.7z
-libmicrohttpd-0.9.55-x64-vc140.7z
-libnfs-3.0.0-x64-v141.7z
-libplist-1.12-x64-vc140.7z
-libxml2-2.9.4-x64-vc140.7z
-libxslt-1.1.29-x64-vc140.7z
-lzo-2.09-x64-vc140.7z
-mini_wdk-10.0.14393.0-x64.7z
-mariadb-connector-c-3.0.6-x64-v141.7z
-openssl-1.1.1-x64-v141.7z
-pcre-8.40-x64-vc140.7z
-python3-3.7.1-x64-v141.7z
-rapidjson-1.1.0-win32.7z
-shairplay-ce80e00-x64-vc140.7z
-sqlite-3.17.0-x64-vc140.7z
-taglib-1.11.1-x64-vc140.7z
-tinyxmlstl-2.6.2-x64-vc140.7z
-zlib-1.2.11-x64-v141.7z
+crossguid-0.2.2-x64-v141-20200105.7z
+curl-7.67.0-x64-v141-20200105.7z
+detours-64ec13-x64-v141-20200105.7z
+dnssd-878.260.1-x64-v141-20200105.7z
+flatbuffers-1.11.0-20200105.7z
+fmt-6.1.2-x64-v141-20200105.7z
+freetype-2.10.1-x64-v141-20200105.7z
+fstrcmp-0.7-x64-v141-20200105.7z
+lcms2-2.9-x64-v141-20200105.7z
+libaacs-0.9.0-x64-v141-20200105.7z
+libass-0.14.0-x64-v141-20200105.7z
+libbdplus-0.1.2-x64-v141-20200105.7z
+libbluray-1.1.2-x64-v141-20200105.7z
+libcdio-2.1.0-x64-v141-20200105.7z
+libcec-4.0.4-x64-v141-20200105.7z
+libfribidi-1.0.8-x64-v141-20200105.7z
+libiconv-1.16-x64-v141-20200105.7z
+libmicrohttpd-0.9.69-x64-v141-20200105.7z
+libnfs-4.0.0-x64-v141-20200105.7z
+libplist-2.1.0-x64-v141-20200105.7z
+libxml2-2.9.9-x64-v141-20200105.7z
+libxslt-1.1.34-x64-v141-20200105.7z
+lzo2-2.10-x64-v141-20200105.7z
+mariadb-connector-c-3.1.6-x64-v141-20200105.7z
+miniwdk-10.0.17763-20200105.7z
+openssl-1.1.1d-x64-v141-20200105.7z
+pcre-8.43-x64-v141-20200105.7z
+pillow-6.2.1-x64-v141-20200105.7z
+pycryptodome-3.9.4-x64-v141-20200105.7z
+python-3.7.5-x64-v141-20200105.7z
+rapidjson-1.1.0-20200105.7z
+shairplay-ce80e00-x64-v141-20200105.7z
+sqlite-3300100-x64-v141-20200105.7z
+taglib-1.11.1-x64-v141-20200105.7z
+tinyxml-2.6.2-x64-v141-20200105.7z
+zlib-1.2.11-x64-v141-20200105.7z
diff --git a/tools/depends/native/JsonSchemaBuilder/win32/JsonSchemaBuilder.vcxproj b/tools/depends/native/JsonSchemaBuilder/win32/JsonSchemaBuilder.vcxproj
index b74a3f9e62..ab84c5cf9f 100644
--- a/tools/depends/native/JsonSchemaBuilder/win32/JsonSchemaBuilder.vcxproj
+++ b/tools/depends/native/JsonSchemaBuilder/win32/JsonSchemaBuilder.vcxproj
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
@@ -14,18 +14,21 @@
<ProjectGuid>{6D4C9949-FF2B-4B14-83BB-D86AB27B855A}</ProjectGuid>
<Keyword>Win32Proj</Keyword>
<RootNamespace>JsonSchemaBuilder</RootNamespace>
+ <WindowsTargetPlatformVersion>10.0.17763.0</WindowsTargetPlatformVersion>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>Unicode</CharacterSet>
+ <PlatformToolset>v141</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
+ <PlatformToolset>v141</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
diff --git a/tools/depends/native/TexturePacker/src/Win32/TexturePacker.vcxproj b/tools/depends/native/TexturePacker/src/Win32/TexturePacker.vcxproj
index 378f1b798d..8f540ed3d4 100644
--- a/tools/depends/native/TexturePacker/src/Win32/TexturePacker.vcxproj
+++ b/tools/depends/native/TexturePacker/src/Win32/TexturePacker.vcxproj
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
@@ -14,18 +14,19 @@
<ProjectGuid>{57EC0A84-7E0C-4EEA-9E63-BB4EBF2310D7}</ProjectGuid>
<RootNamespace>TexturePacker</RootNamespace>
<Keyword>Win32Proj</Keyword>
+ <WindowsTargetPlatformVersion>10.0.17763.0</WindowsTargetPlatformVersion>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>NotSet</CharacterSet>
<WholeProgramOptimization>true</WholeProgramOptimization>
- <PlatformToolset>v140</PlatformToolset>
+ <PlatformToolset>v141</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>NotSet</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
+ <PlatformToolset>v141</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
@@ -57,7 +58,7 @@
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>.;..;..\decoder;..\..\..\..\..\..\xbmc;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <AdditionalIncludeDirectories>.;..;..\decoder;..\..\..\..\..\..\xbmc;..\..\..\..\..\..\project\BuildDependencies\win32\include</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;TARGET_WINDOWS;_ITERATOR_DEBUG_LEVEL=0;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
@@ -69,12 +70,12 @@
<ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>
</ClCompile>
<Link>
- <AdditionalDependencies>jpeg-staticd.lib;libpng16_staticd.lib;giflibd.lib;zlibstaticd.lib;lzo2d.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <AdditionalDependencies>jpeg-staticd.lib;libpng16_staticd.lib;gifd.lib;zlibstaticd.lib;lzo2d.lib;%(AdditionalDependencies)</AdditionalDependencies>
<IgnoreSpecificDefaultLibraries>libcmtd.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<TargetMachine>MachineX86</TargetMachine>
- <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <AdditionalLibraryDirectories>..\..\..\..\..\..\project\BuildDependencies\win32\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers>
</Link>
</ItemDefinitionGroup>
@@ -82,7 +83,7 @@
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<IntrinsicFunctions>true</IntrinsicFunctions>
- <AdditionalIncludeDirectories>.;..;..\decoder;..\..\..\..\..\..\xbmc;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <AdditionalIncludeDirectories>.;..;..\decoder;..\..\..\..\..\..\xbmc;..\..\..\..\..\..\project\BuildDependencies\win32\include</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;TARGET_WINDOWS;_ITERATOR_DEBUG_LEVEL=0;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
@@ -93,14 +94,14 @@
<ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>
</ClCompile>
<Link>
- <AdditionalDependencies>jpeg-static.lib;libpng16_static.lib;giflib.lib;zlibstatic.lib;lzo2.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <AdditionalDependencies>jpeg-static.lib;libpng16_static.lib;gif.lib;zlibstatic.lib;lzo2.lib;%(AdditionalDependencies)</AdditionalDependencies>
<IgnoreSpecificDefaultLibraries>libc.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX86</TargetMachine>
- <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <AdditionalLibraryDirectories>..\..\..\..\..\..\project\BuildDependencies\win32\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers>
</Link>
</ItemDefinitionGroup>
diff --git a/tools/depends/native/TexturePacker/src/Win32/version.rc b/tools/depends/native/TexturePacker/src/Win32/version.rc
index 2c24c37f7f..7ccb57ffe2 100644
--- a/tools/depends/native/TexturePacker/src/Win32/version.rc
+++ b/tools/depends/native/TexturePacker/src/Win32/version.rc
Binary files differ
diff --git a/xbmc/guilib/TextureBundleXBT.cpp b/xbmc/guilib/TextureBundleXBT.cpp
index eb7ce87acd..839f00975b 100644
--- a/xbmc/guilib/TextureBundleXBT.cpp
+++ b/xbmc/guilib/TextureBundleXBT.cpp
@@ -26,10 +26,8 @@
#ifdef TARGET_WINDOWS_DESKTOP
#ifdef NDEBUG
#pragma comment(lib,"lzo2.lib")
-#elif defined _WIN64
-#pragma comment(lib, "lzo2d.lib")
#else
-#pragma comment(lib, "lzo2-no_idb.lib")
+#pragma comment(lib, "lzo2d.lib")
#endif
#endif
diff --git a/xbmc/interfaces/python/PythonInvoker.cpp b/xbmc/interfaces/python/PythonInvoker.cpp
index 62a30be9a6..e1b8382fef 100644
--- a/xbmc/interfaces/python/PythonInvoker.cpp
+++ b/xbmc/interfaces/python/PythonInvoker.cpp
@@ -9,7 +9,6 @@
// python.h should always be included first before any other includes
#include <Python.h>
#include <iterator>
-#include <osdefs.h>
// This is a workaround to compile Kodi against python 3.8
//! @todo implement a compliant way to get access to the chain of thread states
@@ -47,6 +46,12 @@
#include "platform/posix/XTimeUtils.h"
#endif
+// clang-format off
+// This breaks fmt because of SEP define, don't include
+// before anything that includes logging
+#include <osdefs.h>
+// clang-format on
+
#ifdef TARGET_WINDOWS
extern "C" FILE *fopen_utf8(const char *_Filename, const char *_Mode);
#else
diff --git a/xbmc/platform/win10/storage/Win10StorageProvider.cpp b/xbmc/platform/win10/storage/Win10StorageProvider.cpp
index 26c311c122..f77e5aa814 100644
--- a/xbmc/platform/win10/storage/Win10StorageProvider.cpp
+++ b/xbmc/platform/win10/storage/Win10StorageProvider.cpp
@@ -151,7 +151,9 @@ std::vector<std::string> CStorageProvider::GetDiskUsage()
auto localfolder = ApplicationData::Current().LocalFolder().Path();
GetDiskFreeSpaceExW(localfolder.c_str(), nullptr, &ULTotal, &ULTotalFree);
- strRet = FromW(StringUtils::Format(L"%s: %d MB %s", g_localizeStrings.Get(21440), (ULTotalFree.QuadPart / (1024 * 1024)), g_localizeStrings.Get(160).c_str()));
+ strRet = StringUtils::Format("%s: %d MB %s", g_localizeStrings.Get(21440),
+ (ULTotalFree.QuadPart / (1024 * 1024)),
+ g_localizeStrings.Get(160).c_str());
result.push_back(strRet);
DWORD drivesBits = GetLogicalDrives();
diff --git a/xbmc/rendering/dx/DeviceResources.h b/xbmc/rendering/dx/DeviceResources.h
index 1b4f57dd34..50a16521a3 100644
--- a/xbmc/rendering/dx/DeviceResources.h
+++ b/xbmc/rendering/dx/DeviceResources.h
@@ -15,7 +15,6 @@
#include <dxgi1_3.h>
#else
#include <dxgi1_2.h>
-#include <easyhook/easyhook.h>
#endif
#include <functional>
#include <memory>
diff --git a/xbmc/utils/StringUtils.cpp b/xbmc/utils/StringUtils.cpp
index 74d67ddcb0..af872cbdd7 100644
--- a/xbmc/utils/StringUtils.cpp
+++ b/xbmc/utils/StringUtils.cpp
@@ -16,7 +16,11 @@
//
//------------------------------------------------------------------------
+#ifdef HAVE_NEW_CROSSGUID
+#include <guid.hpp>
+#else
#include <guid.h>
+#endif
#if defined(TARGET_ANDROID)
#include <androidjni/JNIThreading.h>
@@ -1126,11 +1130,15 @@ void StringUtils::WordToDigits(std::string &word)
std::string StringUtils::CreateUUID()
{
+#ifdef HAVE_NEW_CROSSGUID
+ return xg::newGuid().str();
+#else
static GuidGenerator guidGenerator;
auto guid = guidGenerator.newGuid();
std::stringstream strGuid; strGuid << guid;
return strGuid.str();
+#endif
}
bool StringUtils::ValidateUUID(const std::string &uuid)
diff --git a/xbmc/windowing/windows/WinSystemWin32DX.cpp b/xbmc/windowing/windows/WinSystemWin32DX.cpp
index 2270a65000..b6e5e280b2 100644
--- a/xbmc/windowing/windows/WinSystemWin32DX.cpp
+++ b/xbmc/windowing/windows/WinSystemWin32DX.cpp
@@ -20,15 +20,21 @@
#include "system.h"
#ifndef _M_X64
-#pragma comment(lib, "EasyHook32.lib")
#include "utils/SystemInfo.h"
+#endif
+#if _DEBUG
+#pragma comment(lib, "detoursd.lib")
#else
-#pragma comment(lib, "EasyHook64.lib")
+#pragma comment(lib, "detours.lib")
#endif
#pragma comment(lib, "dxgi.lib")
+#include <windows.h>
+#include <winnt.h>
+#include <winternl.h>
#pragma warning(disable: 4091)
#include <d3d10umddi.h>
#pragma warning(default: 4091)
+#include <detours.h>
using KODI::PLATFORM::WINDOWS::FromW;
@@ -48,7 +54,6 @@ std::unique_ptr<CWinSystemBase> CWinSystemBase::CreateWinSystem()
CWinSystemWin32DX::CWinSystemWin32DX() : CRenderSystemDX()
, m_hDriverModule(nullptr)
- , m_hHook(nullptr)
{
}
@@ -200,10 +205,13 @@ bool CWinSystemWin32DX::SetFullScreen(bool fullScreen, RESOLUTION_INFO& res, boo
void CWinSystemWin32DX::UninitHooks()
{
// uninstall
- LhUninstallAllHooks();
- // we need to wait for memory release
- LhWaitForPendingRemovals();
- SAFE_DELETE(m_hHook);
+ if (!s_fnOpenAdapter10_2)
+ return;
+
+ DetourTransactionBegin();
+ DetourUpdateThread(GetCurrentThread());
+ DetourDetach(reinterpret_cast<void**>(&s_fnOpenAdapter10_2), HookOpenAdapter10_2);
+ DetourTransactionCommit();
if (m_hDriverModule)
{
FreeLibrary(m_hDriverModule);
@@ -223,7 +231,8 @@ void CWinSystemWin32DX::InitHooks(IDXGIOutput* pOutput)
bool deviceFound = false;
// delete exiting hooks.
- UninitHooks();
+ if (s_fnOpenAdapter10_2)
+ UninitHooks();
// enum devices to find matched
while (EnumDisplayDevicesW(nullptr, adapter, &displayDevice, 0))
@@ -280,11 +289,11 @@ void CWinSystemWin32DX::InitHooks(IDXGIOutput* pOutput)
s_fnOpenAdapter10_2 = reinterpret_cast<PFND3D10DDI_OPENADAPTER>(GetProcAddress(m_hDriverModule, "OpenAdapter10_2"));
if (s_fnOpenAdapter10_2 != nullptr)
{
- ULONG ACLEntries[1] = { 0 };
- m_hHook = new HOOK_TRACE_INFO();
+ DetourTransactionBegin();
+ DetourUpdateThread(GetCurrentThread());
+ DetourAttach(reinterpret_cast<void**>(&s_fnOpenAdapter10_2), HookOpenAdapter10_2);
+ if (NO_ERROR == DetourTransactionCommit())
// install and activate hook into a driver
- if (SUCCEEDED(LhInstallHook(s_fnOpenAdapter10_2, HookOpenAdapter10_2, nullptr, m_hHook))
- && SUCCEEDED(LhSetInclusiveACL(ACLEntries, 1, m_hHook)))
{
CLog::LogF(LOGDEBUG, "D3D11 hook installed and activated.");
break;
@@ -292,7 +301,7 @@ void CWinSystemWin32DX::InitHooks(IDXGIOutput* pOutput)
else
{
CLog::Log(LOGDEBUG, __FUNCTION__": Unable ot install and activate D3D11 hook.");
- SAFE_DELETE(m_hHook);
+ s_fnOpenAdapter10_2 = nullptr;
FreeLibrary(m_hDriverModule);
m_hDriverModule = nullptr;
}
diff --git a/xbmc/windowing/windows/WinSystemWin32DX.h b/xbmc/windowing/windows/WinSystemWin32DX.h
index 708ae56b64..78f2f52b51 100644
--- a/xbmc/windowing/windows/WinSystemWin32DX.h
+++ b/xbmc/windowing/windows/WinSystemWin32DX.h
@@ -11,8 +11,6 @@
#include "rendering/dx/RenderSystemDX.h"
#include "windowing/windows/WinSystemWin32.h"
-#include <easyhook/easyhook.h>
-
struct D3D10DDIARG_CREATERESOURCE;
class CWinSystemWin32DX : public CWinSystemWin32, public CRenderSystemDX
@@ -76,6 +74,5 @@ protected:
bool ChangeResolution(const RESOLUTION_INFO& res, bool forceChange = false) override;
HMODULE m_hDriverModule;
- TRACED_HOOK_HANDLE m_hHook;
};