From cee38f95e0de1f5017af441398c6031810d7d412 Mon Sep 17 00:00:00 2001
From: Dennis Eisold <de@itstall.de>
Date: Wed, 4 Dec 2019 00:35:27 +0100
Subject: [PATCH] NullPointer behoben

---
 .../java/projekt/enigma/GuiController.java    | 21 ++++++++++++-------
 1 file changed, 14 insertions(+), 7 deletions(-)

diff --git a/src/main/java/projekt/enigma/GuiController.java b/src/main/java/projekt/enigma/GuiController.java
index 9fb90f2..9e5665c 100644
--- a/src/main/java/projekt/enigma/GuiController.java
+++ b/src/main/java/projekt/enigma/GuiController.java
@@ -505,16 +505,21 @@ public class GuiController {
      * sowie den Klartext in das Textfeld tfKlartext. Setzt den Spruchschlüssel
      */
     private void empfangeFunkspruch() {
+
         progressDialogue("rx");
 
-        if (this.empfangeneNachricht[2] != null) {
-            setzeTagesSchluessel();
-            tfKlartext.setText(this.empfangeneNachricht[2]);
-            tfCodiert.setText(this.empfangeneNachricht[1]);
-            resetDisplay = true;
+        try {
+            if (this.empfangeneNachricht[2] != null && this.empfangeneNachricht[1] != null) {
+                setzeTagesSchluessel();
+                tfKlartext.setText(this.empfangeneNachricht[2]);
+                tfCodiert.setText(this.empfangeneNachricht[1]);
+                resetDisplay = true;
 
-            // Spruchschluessel in das Feld lblSpruchschluessel schreiben
-            lblSpruchschluessel.setText(codierer.empfangenerSpruchschluessel(this.empfangeneNachricht[2]));
+                // Spruchschluessel in das Feld lblSpruchschluessel schreiben
+                lblSpruchschluessel.setText(codierer.empfangenerSpruchschluessel(this.empfangeneNachricht[2]));
+            }
+        } catch(NullPointerException ignored) {
+            new Fehler().showErrorDialog("warning", "Aus dem Westen nichts neues", "Keine neuen Nachrichten vorhanden");
         }
     }
 
@@ -523,6 +528,7 @@ public class GuiController {
      * Löscht die Textfelder tfKlartext und tfCodiert
      */
     private void sendeFunkspruch() {
+
         this.tfKlartext.setText("");
         this.tfCodiert.setText("");
 
@@ -530,6 +536,7 @@ public class GuiController {
     }
 
     private void progressDialogue(String strRxTx) {
+
         Task copyWorker = createWorker(strRxTx);
 
         ProgressDialog dialog = new ProgressDialog(copyWorker);
-- 
GitLab