diff --git a/core/src/com/unciv/ui/saves/SaveGameScreen.kt b/core/src/com/unciv/ui/saves/SaveGameScreen.kt index 128c531587..3b0d8c1f84 100644 --- a/core/src/com/unciv/ui/saves/SaveGameScreen.kt +++ b/core/src/com/unciv/ui/saves/SaveGameScreen.kt @@ -39,9 +39,13 @@ class SaveGameScreen(val gameInfo: GameInfo) : PickerScreen(disableScroll = true val copyJsonButton = "Copy to clipboard".toTextButton() copyJsonButton.onClick { - val json = Json().toJson(gameInfo) - val base64Gzip = Gzip.zip(json) - Gdx.app.clipboard.contents = base64Gzip + try { + val json = Json().toJson(gameInfo) + val base64Gzip = Gzip.zip(json) + Gdx.app.clipboard.contents = base64Gzip + } catch (OOM: OutOfMemoryError) { + // you don't get a special toast, this isn't nearly common enough, this is a total edge-case + } } newSave.add(copyJsonButton).row() if (GameSaver.canLoadFromCustomSaveLocation()) {