From 2f401e8d3206ef7dcd4cbafd8515ec072754ac61 Mon Sep 17 00:00:00 2001 From: Love Billenius Date: Tue, 30 Jan 2024 19:17:11 +0100 Subject: [PATCH] nullptr error handling --- src/Game.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/Game.cpp b/src/Game.cpp index 3a722fe..00faf41 100644 --- a/src/Game.cpp +++ b/src/Game.cpp @@ -47,6 +47,11 @@ void Game::draw(SDL_Renderer *const renderer) { void Game::update() { switch (gameState) { case GameState::START_SCREEN: + // This should not happen, but it's better than a segfault. + if (startScreen == nullptr) { + std::cerr << "startScreen was not initialized (null)." << std::endl; + exit(-1); + } startScreen->update(); if (startScreen->isDone()) { gameState = GameState::GAME; @@ -71,6 +76,11 @@ void Game::update() { } break; case GameState::END_SCREEN: + // This should not happen, but it's better than a segfault. + if (endScreen == nullptr) { + std::cerr << "endScreen was not initialized (null)." << std::endl; + exit(-1); + } endScreen->update(); if (endScreen->isDone()) { gameState = GameState::GAME;