aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPär Björklund <per.bjorklund@gmail.com>2019-12-16 17:56:34 +0100
committerPär Björklund <per.bjorklund@gmail.com>2020-01-06 14:11:00 +0100
commitb04da72e9dbf568a5af657203bd39a186f665c3f (patch)
tree69340da99776b87014d004983bc5615af1e4530a
parent71616883c3cdbbde8e7a9843c78c86b53ae67f32 (diff)
Update dependencies
Updates most dependencies to latest version Fixes the store build by fixing python Enables pillow and pycryptodome again on windows Replaces easyhook with detours
-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;
};