Fixed possible dangling pointer to spinner listener

git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@9390 178a84e3-b1eb-0310-8ba1-8eac791a3b58
This commit is contained in:
auria 2011-07-30 21:05:18 +00:00
parent c19572dcfb
commit a62766bd8f

View File

@ -369,7 +369,7 @@ public:
// -------------------------------------------------------------------------
~PlayerKartWidget()
{
{
if (GUIEngine::getFocusForPlayer(m_playerID) == this)
{
GUIEngine::focusNothingForPlayer(m_playerID);
@ -378,10 +378,14 @@ public:
//if (m_player_ID_label->getIrrlichtElement() != NULL)
// m_player_ID_label->getIrrlichtElement()->remove();
if (m_player_ident_spinner != NULL && m_player_ident_spinner->getIrrlichtElement() != NULL)
if (m_player_ident_spinner != NULL)
{
m_player_ident_spinner->setListener(NULL);
m_player_ident_spinner->getIrrlichtElement()->remove();
if (m_player_ident_spinner->getIrrlichtElement() != NULL)
{
m_player_ident_spinner->getIrrlichtElement()->remove();
}
}
if (m_model_view->getIrrlichtElement() != NULL)
@ -525,6 +529,7 @@ public:
m_ready_text->setTextAlignment(gui::EGUIA_CENTER, gui::EGUIA_CENTER );
m_children.remove(m_player_ident_spinner);
m_player_ident_spinner->setListener(NULL);
m_player_ident_spinner->getIrrlichtElement()->remove();
m_player_ident_spinner->elementRemoved();
m_player_ident_spinner = NULL;