From e042673779a3946e0ecdbe831d1699f9e25ffa4e Mon Sep 17 00:00:00 2001 From: David Cernat Date: Thu, 1 Jun 2017 22:42:57 +0300 Subject: [PATCH] [Client] Fix error when trying to delete player markers that don't exist --- apps/openmw/mwmp/DedicatedPlayer.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/apps/openmw/mwmp/DedicatedPlayer.cpp b/apps/openmw/mwmp/DedicatedPlayer.cpp index 666a1bcfa..f9a2738b0 100644 --- a/apps/openmw/mwmp/DedicatedPlayer.cpp +++ b/apps/openmw/mwmp/DedicatedPlayer.cpp @@ -235,7 +235,7 @@ void DedicatedPlayer::setCell() // Remove the marker entirely if this player has moved to an interior that is inactive for us if (!cell.isExterior() && !Main::get().getCellController()->isActiveWorldCell(cell)) - Main::get().getGUIController()->mPlayerMarkers.deleteMarker(marker); + removeMarker(); // Otherwise, update their marker so the player shows up in the right cell on the world map else updateMarker(); @@ -269,7 +269,10 @@ void DedicatedPlayer::removeMarker() return; markerEnabled = false; - Main::get().getGUIController()->mPlayerMarkers.deleteMarker(marker); + GUIController *gui = Main::get().getGUIController(); + + if (gui->mPlayerMarkers.contains(marker)) + Main::get().getGUIController()->mPlayerMarkers.deleteMarker(marker); } void DedicatedPlayer::setMarkerState(bool state)