diff --git a/Intersect.Editor/Forms/FrmUploadToServer.cs b/Intersect.Editor/Forms/FrmUploadToServer.cs index fed1d09ef3..771ecdf80d 100644 --- a/Intersect.Editor/Forms/FrmUploadToServer.cs +++ b/Intersect.Editor/Forms/FrmUploadToServer.cs @@ -443,7 +443,7 @@ private async void btnUpload_Click(object sender, EventArgs e) .Where(frameObject => frameObject.TryGetValue("filename", out _)) .Select(frameObject => frameObject["filename"]?.Value()) .Where(filename => !string.IsNullOrWhiteSpace(filename)) - .Select(filename => Path.Combine(resourcesDirectoryName, filename!).Replace('\\', '/')) + .Select(filename => Path.Combine(resourcesDirectoryName, filename!).Replace('\\', '/').ToLower(CultureInfo.CurrentCulture)) .OfType(); } catch @@ -598,7 +598,7 @@ private async void btnUpload_Click(object sender, EventArgs e) .Where(frameObject => frameObject.TryGetValue("filename", out _)) .Select(frameObject => frameObject["filename"]?.Value()) .Where(filename => !string.IsNullOrWhiteSpace(filename)) - .Select(filename => Path.Combine(resourcesDirectoryName, filename!).Replace('\\', '/')) + .Select(filename => Path.Combine(resourcesDirectoryName, filename!).Replace('\\', '/').ToLower(CultureInfo.CurrentCulture)) .OfType(); } catch diff --git a/Intersect.Editor/Forms/frmMain.cs b/Intersect.Editor/Forms/frmMain.cs index 12618b82b9..d41bfff53e 100644 --- a/Intersect.Editor/Forms/frmMain.cs +++ b/Intersect.Editor/Forms/frmMain.cs @@ -2184,37 +2184,37 @@ private void createUpdate(string sourceDirectory, string targetDirectory, Update var pathToPacksDirectory = Path.Combine(pathToResourcesDirectory, "packs"); if (packagingEnabled && Directory.Exists(pathToPacksDirectory)) { - // When packaging is enabled: include packs, exclude source files + // When packaging is enabled: include packs, exclude source files for both client and editor var packFileNames = Directory.GetFiles(pathToPacksDirectory, "*.meta"); // Exclude source texture files that were packed - clientExcludeFiles.AddRange( - packFileNames.SelectMany( - pack => + var packedTextureFiles = packFileNames.SelectMany( + pack => + { + try { - try - { - var tokenPack = JToken.Parse(GzipCompression.ReadDecompressedString(pack)); - if (tokenPack is not JObject objectPack || !objectPack.TryGetValue("frames", out var tokenFrames)) - { - return Enumerable.Empty(); - } - - return tokenFrames.Children() - .OfType() - .Where(frameObject => frameObject.TryGetValue("filename", out _)) - .Select(frameObject => frameObject["filename"]?.Value()) - .Where(filename => !string.IsNullOrWhiteSpace(filename)) - .Select(filename => Path.Combine(resourcesDirectoryName, filename!).Replace('\\', '/')) - .OfType(); - } - catch + var tokenPack = JToken.Parse(GzipCompression.ReadDecompressedString(pack)); + if (tokenPack is not JObject objectPack || !objectPack.TryGetValue("frames", out var tokenFrames)) { return Enumerable.Empty(); } + + return tokenFrames.Children() + .OfType() + .Where(frameObject => frameObject.TryGetValue("filename", out _)) + .Select(frameObject => frameObject["filename"]?.Value()) + .Where(filename => !string.IsNullOrWhiteSpace(filename)) + .Select(filename => Path.Combine(resourcesDirectoryName, filename!).Replace('\\', '/').ToLower(CultureInfo.CurrentCulture)) + .OfType(); } - ) - ); + catch + { + return Enumerable.Empty(); + } + } + ).ToList(); + clientExcludeFiles.AddRange(packedTextureFiles); + editorExcludeFiles.AddRange(packedTextureFiles); // Exclude source sound files that were packed var soundIndex = Path.Combine(pathToPacksDirectory, "sound.index"); @@ -2223,11 +2223,11 @@ private void createUpdate(string sourceDirectory, string targetDirectory, Update try { using AssetPacker soundPacker = new(soundIndex, pathToPacksDirectory); - clientExcludeFiles.AddRange( - soundPacker.FileList.Select( - sound => Path.Combine(resourcesDirectoryName, "sounds", sound.ToLower(CultureInfo.CurrentCulture)).Replace('\\', '/') - ) - ); + var packedSoundFiles = soundPacker.FileList.Select( + sound => Path.Combine(resourcesDirectoryName, "sounds", sound.ToLower(CultureInfo.CurrentCulture)).Replace('\\', '/') + ).ToList(); + clientExcludeFiles.AddRange(packedSoundFiles); + editorExcludeFiles.AddRange(packedSoundFiles); } catch { @@ -2242,11 +2242,11 @@ private void createUpdate(string sourceDirectory, string targetDirectory, Update try { using AssetPacker musicPacker = new(musicIndex, pathToPacksDirectory); - clientExcludeFiles.AddRange( - musicPacker.FileList.Select( - music => Path.Combine(resourcesDirectoryName, "music", music.ToLower(CultureInfo.CurrentCulture)).Replace('\\', '/') - ) - ); + var packedMusicFiles = musicPacker.FileList.Select( + music => Path.Combine(resourcesDirectoryName, "music", music.ToLower(CultureInfo.CurrentCulture)).Replace('\\', '/') + ).ToList(); + clientExcludeFiles.AddRange(packedMusicFiles); + editorExcludeFiles.AddRange(packedMusicFiles); } catch {