From 7015e4d502651005cb66965dd75ca267c92e8945 Mon Sep 17 00:00:00 2001 From: Jordan Dominion Date: Thu, 28 Dec 2023 22:27:07 -0500 Subject: [PATCH] Handle exceptions when deleting the BYOND cache folder --- .../Components/Engine/ByondInstallerBase.cs | 22 ++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/src/Tgstation.Server.Host/Components/Engine/ByondInstallerBase.cs b/src/Tgstation.Server.Host/Components/Engine/ByondInstallerBase.cs index 02691acfc0..a992073d10 100644 --- a/src/Tgstation.Server.Host/Components/Engine/ByondInstallerBase.cs +++ b/src/Tgstation.Server.Host/Components/Engine/ByondInstallerBase.cs @@ -116,11 +116,23 @@ namespace Tgstation.Server.Host.Components.Engine var byondDir = PathToUserFolder; Logger.LogDebug("Cleaning BYOND cache..."); - var cacheCleanTask = IOManager.DeleteDirectory( - IOManager.ConcatPath( - byondDir, - CacheDirectoryName), - cancellationToken); + async Task CleanDirectorySafe() + { + try + { + await IOManager.DeleteDirectory( + IOManager.ConcatPath( + byondDir, + CacheDirectoryName), + cancellationToken); + } + catch (Exception ex) + { + Logger.LogWarning(ex, "Failed to clean BYOND cache!"); + } + } + + var cacheCleanTask = CleanDirectorySafe(); // Create local cfg directory in case it doesn't exist var localCfgDirectory = IOManager.ConcatPath(