print invalid paths if validation failed

This commit is contained in:
rootdarkarchon
2022-11-10 14:53:32 +01:00
parent c585bb739a
commit c5b0f6146e

View File

@@ -131,13 +131,14 @@ public partial class MareHub
foreach (var replacement in characterCache.FileReplacements.SelectMany(p => p.Value)) foreach (var replacement in characterCache.FileReplacements.SelectMany(p => p.Value))
{ {
var invalidPaths = replacement.GamePaths.Where(p => !GamePathRegex().IsMatch(p)).ToArray();
replacement.GamePaths = replacement.GamePaths.Where(p => GamePathRegex().IsMatch(p)).ToArray(); replacement.GamePaths = replacement.GamePaths.Where(p => GamePathRegex().IsMatch(p)).ToArray();
validGamePaths = replacement.GamePaths.Any(); validGamePaths = replacement.GamePaths.Any();
bool validHash = string.IsNullOrEmpty(replacement.Hash) || HashRegex().IsMatch(replacement.Hash); bool validHash = string.IsNullOrEmpty(replacement.Hash) || HashRegex().IsMatch(replacement.Hash);
bool validFileSwapPath = string.IsNullOrEmpty(replacement.FileSwapPath) || GamePathRegex().IsMatch(replacement.FileSwapPath); bool validFileSwapPath = string.IsNullOrEmpty(replacement.FileSwapPath) || GamePathRegex().IsMatch(replacement.FileSwapPath);
if (!validGamePaths || !validHash || !validFileSwapPath) if (!validGamePaths || !validHash || !validFileSwapPath)
{ {
_logger.LogCallWarning(MareHubLogger.Args("Invalid Data", "GamePaths", validGamePaths, "Hash", validHash, "FileSwap", validFileSwapPath)); _logger.LogCallWarning(MareHubLogger.Args("Invalid Data", "GamePaths", validGamePaths, string.Join(",", invalidPaths)), "Hash", validHash, replacement.Hash, "FileSwap", validFileSwapPath, replacement.FileSwapPath);
throw new HubException("Invalid data provided"); throw new HubException("Invalid data provided");
} }
} }