From 532e8bf122420ecaa9d98c851b2cba2e08447dc9 Mon Sep 17 00:00:00 2001 From: Joonas Rikkonen Date: Mon, 8 Apr 2019 11:44:20 +0300 Subject: [PATCH] (2f2a6df6a) Fixed crashing when attempting to publish a sub with a preview image larger than 1MB on the Steam Workshop. Closes #1400 --- .../BarotraumaClient/Source/Networking/SteamManager.cs | 2 +- .../BarotraumaClient/Source/Screens/SteamWorkshopScreen.cs | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/Barotrauma/BarotraumaClient/Source/Networking/SteamManager.cs b/Barotrauma/BarotraumaClient/Source/Networking/SteamManager.cs index f97e744d8..3d76093fb 100644 --- a/Barotrauma/BarotraumaClient/Source/Networking/SteamManager.cs +++ b/Barotrauma/BarotraumaClient/Source/Networking/SteamManager.cs @@ -210,7 +210,7 @@ namespace Barotrauma.Steam public const string WorkshopItemPreviewImageFolder = "Workshop"; public const string PreviewImageName = "PreviewImage.png"; private const string MetadataFileName = "filelist.xml"; - private const string DefaultPreviewImagePath = "Content/DefaultWorkshopPreviewImage.png"; + public const string DefaultPreviewImagePath = "Content/DefaultWorkshopPreviewImage.png"; private Sprite defaultPreviewImage; public Sprite DefaultPreviewImage diff --git a/Barotrauma/BarotraumaClient/Source/Screens/SteamWorkshopScreen.cs b/Barotrauma/BarotraumaClient/Source/Screens/SteamWorkshopScreen.cs index 85a27e914..c8ba34fee 100644 --- a/Barotrauma/BarotraumaClient/Source/Screens/SteamWorkshopScreen.cs +++ b/Barotrauma/BarotraumaClient/Source/Screens/SteamWorkshopScreen.cs @@ -736,6 +736,11 @@ namespace Barotrauma sub.PreviewImage.Texture.SaveAsPng(s, (int)sub.PreviewImage.size.X, (int)sub.PreviewImage.size.Y); itemEditor.PreviewImage = previewImagePath; } + if (new FileInfo(previewImagePath).Length > 1024 * 1024) + { + new GUIMessageBox(TextManager.Get("Error"), TextManager.Get("WorkshopItemPreviewImageTooLarge")); + itemEditor.PreviewImage = SteamManager.DefaultPreviewImagePath; + } } catch (Exception e) {