From 1f7659cb12185e231ec7e91e3aebbb68e4ab977d Mon Sep 17 00:00:00 2001 From: Jan Borsodi Date: Fri, 22 Oct 2010 23:18:57 +0200 Subject: [PATCH] Only set the class and race IDs if they contain a non-empty string. --- apps/openmw/mwgui/window_manager.cpp | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/apps/openmw/mwgui/window_manager.cpp b/apps/openmw/mwgui/window_manager.cpp index 563545f5b..a6b5f5d62 100644 --- a/apps/openmw/mwgui/window_manager.cpp +++ b/apps/openmw/mwgui/window_manager.cpp @@ -527,7 +527,9 @@ void WindowManager::onRaceDialogDone() { if (raceDialog) { - environment.mMechanicsManager->setPlayerRace(raceDialog->getRaceId(), raceDialog->getGender() == RaceDialog::GM_Male); + const std::string &raceId = raceDialog->getRaceId(); + if (!raceId.empty()) + environment.mMechanicsManager->setPlayerRace(raceId, raceDialog->getGender() == RaceDialog::GM_Male); raceDialog->eventDone = MWGui::RaceDialog::EventHandle_Void(); raceDialog->setVisible(false); garbageDialogs.push_back(raceDialog); @@ -551,7 +553,9 @@ void WindowManager::onRaceDialogBack() { if (raceDialog) { - environment.mMechanicsManager->setPlayerRace(raceDialog->getRaceId(), raceDialog->getGender() == RaceDialog::GM_Male); + const std::string &raceId = raceDialog->getRaceId(); + if (!raceId.empty()) + environment.mMechanicsManager->setPlayerRace(raceId, raceDialog->getGender() == RaceDialog::GM_Male); raceDialog->setVisible(false); garbageDialogs.push_back(raceDialog); raceDialog = nullptr; @@ -715,7 +719,9 @@ void WindowManager::onPickClassDialogDone() { if (pickClassDialog) { - environment.mMechanicsManager->setPlayerClass(pickClassDialog->getClassId()); + const std::string &classId = pickClassDialog->getClassId(); + if (!classId.empty()) + environment.mMechanicsManager->setPlayerClass(classId); pickClassDialog->eventDone = MWGui::PickClassDialog::EventHandle_Void(); pickClassDialog->setVisible(false); garbageDialogs.push_back(pickClassDialog); @@ -739,7 +745,9 @@ void WindowManager::onPickClassDialogBack() { if (pickClassDialog) { - environment.mMechanicsManager->setPlayerClass(pickClassDialog->getClassId()); + const std::string classId = pickClassDialog->getClassId(); + if (!classId.empty()) + environment.mMechanicsManager->setPlayerClass(classId); pickClassDialog->setVisible(false); garbageDialogs.push_back(pickClassDialog); pickClassDialog = nullptr;