From 8351440e748f6ecaeba8965118e8f66c0992b31e Mon Sep 17 00:00:00 2001
From: tobias <thinkdifferent055@gmail.com>
Date: Sat, 6 Feb 2021 21:15:17 +0100
Subject: [PATCH] Make pad settings title creation error prune

---
 .../option/pad/PadSettingsViewController.java      | 14 ++++++++++++--
 1 file changed, 12 insertions(+), 2 deletions(-)

diff --git a/PlayWall/src/main/java/de/tobias/playpad/viewcontroller/option/pad/PadSettingsViewController.java b/PlayWall/src/main/java/de/tobias/playpad/viewcontroller/option/pad/PadSettingsViewController.java
index efccf7b0..d7da00b3 100644
--- a/PlayWall/src/main/java/de/tobias/playpad/viewcontroller/option/pad/PadSettingsViewController.java
+++ b/PlayWall/src/main/java/de/tobias/playpad/viewcontroller/option/pad/PadSettingsViewController.java
@@ -24,6 +24,7 @@ import javafx.stage.Stage;
 
 import java.util.ArrayList;
 import java.util.List;
+import java.util.Optional;
 
 public class PadSettingsViewController extends NVC implements IPadSettingsViewController {
 
@@ -77,11 +78,20 @@ public class PadSettingsViewController extends NVC implements IPadSettingsViewCo
 	private void setTitle(Pad pad) {
 		String title;
 		if (pad.getStatus() != PadStatus.EMPTY) {
-			title = Localization.getString(Strings.UI_WINDOW_PAD_SETTINGS_TITLE, pad.getPositionReadable(), pad.getName());
+			try {
+				title = Localization.getString(Strings.UI_WINDOW_PAD_SETTINGS_TITLE, pad.getPositionReadable(), pad.getName());
+			} catch (IllegalStateException e) {
+				Logger.error(e);
+				title = Localization.getString(Strings.UI_WINDOW_PAD_SETTINGS_TITLE_EMPTY, pad.getPositionReadable());
+			}
 		} else {
 			title = Localization.getString(Strings.UI_WINDOW_PAD_SETTINGS_TITLE_EMPTY, pad.getPositionReadable());
 		}
-		getStageContainer().ifPresent(nvcStage -> nvcStage.getStage().setTitle(title));
+
+		final Optional<NVCStage> stageContainer = getStageContainer();
+		if (stageContainer.isPresent()) {
+			stageContainer.get().getStage().setTitle(title);
+		}
 	}
 
 	@Override
-- 
GitLab