ソースを参照

Absturz beim senden einer Fehlermeldung an die clients wenn das spiel nicht gestartet werden konnte behoben

Kolja Strohm 5 年 前
コミット
4dae606bc0
1 ファイル変更10 行追加2 行削除
  1. 10 2
      SpielServer/Spiel.cpp

+ 10 - 2
SpielServer/Spiel.cpp

@@ -551,7 +551,11 @@ void Spiel::thread()
         tmp += id;
         DateiRemove( tmp );
         for( int i = 0; i < spielerAnzahl; i++ )
-            klients->z( i )->errorZuKlientSende( "Fehler beim laden des Spiels. Der Server kann das Spiel nict finden." );
+        {
+            SSKlient *tmp = klients->z( i );
+            if( tmp )
+                tmp->errorZuKlientSende( "Fehler beim laden des Spiels. Der Server kann das Spiel nicht finden." );
+        }
         ss->zDB()->setSpielStatusBeendet( id, 4 );
         ss->removeSpiel( id ); // delete this
         return;
@@ -567,7 +571,11 @@ void Spiel::thread()
         tmp += id;
         DateiRemove( tmp );
         for( int i = 0; i < spielerAnzahl; i++ )
-            klients->z( i )->errorZuKlientSende( "Fehler beim laden des Spiels. Der Server kann das Spiel nicht finden." );
+        {
+            SSKlient *tmp = klients->z( i );
+            if( tmp )
+                tmp->errorZuKlientSende( "Fehler beim laden des Spiels. Der Server kann das Spiel nicht finden." );
+        }
         ss->zDB()->setSpielStatusBeendet( id, 4 );
         ss->removeSpiel( id ); // delete this
         return;