From cfd8d4c993ba2b6d61541b66a8d08ed436de824d Mon Sep 17 00:00:00 2001 From: derrod Date: Thu, 16 Nov 2023 03:49:55 +0100 Subject: [PATCH] updater: Clear shader cache after updating --- UI/win-update/updater/updater.cpp | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/UI/win-update/updater/updater.cpp b/UI/win-update/updater/updater.cpp index 1c08fcca182413..a6ec91fd591048 100644 --- a/UI/win-update/updater/updater.cpp +++ b/UI/win-update/updater/updater.cpp @@ -1298,6 +1298,16 @@ static void UpdateRegistryVersion(const Manifest &manifest) RegCloseKey(key); } +static void ClearShaderCache() +{ + wchar_t shader_path[MAX_PATH]; + SHGetFolderPathW(NULL, CSIDL_COMMON_APPDATA, NULL, SHGFP_TYPE_CURRENT, + shader_path); + StringCbCatW(shader_path, sizeof(shader_path), + L"\\obs-studio\\shader-cache"); + filesystem::remove_all(shader_path); +} + extern "C" void UpdateHookFiles(void); static bool Update(wchar_t *cmdLine) @@ -1700,6 +1710,12 @@ static bool Update(wchar_t *cmdLine) Status(L"Updating Game Capture hooks..."); UpdateHookFiles(); + /* ------------------------------------- * + * Clear shader cache */ + + Status(L"Clearing shader cache..."); + ClearShaderCache(); + /* ------------------------------------- * * Update installed version in registry */