From 3ac979e62409f0a373867838272a761490d808d6 Mon Sep 17 00:00:00 2001 From: Spp Date: Mon, 25 Oct 2010 12:21:42 +0200 Subject: [PATCH] Core/Dungeon Finder: Fix a crash in UpdateProposal (added in 66a8af8214) Closes issue 4564 --HG-- branch : trunk --- src/server/game/DungeonFinding/LFGMgr.cpp | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/src/server/game/DungeonFinding/LFGMgr.cpp b/src/server/game/DungeonFinding/LFGMgr.cpp index 3f8277ec23..3d7e1ab7d2 100755 --- a/src/server/game/DungeonFinding/LFGMgr.cpp +++ b/src/server/game/DungeonFinding/LFGMgr.cpp @@ -1509,15 +1509,19 @@ void LFGMgr::UpdateProposal(uint32 proposalId, uint32 lowGuid, bool accept) if (sendUpdate) plr->GetSession()->SendUpdateProposal(proposalId, pProposal); if (plr->GetGroup()) - plr->GetSession()->SendLfgUpdateParty(LFG_UPDATETYPE_GROUP_FOUND); - else - plr->GetSession()->SendLfgUpdatePlayer(LFG_UPDATETYPE_GROUP_FOUND); - - plr->SetLfgUpdate(false); - if (plr->GetGroup() != grp) { - plr->GetGroup()->SetLfgQueued(false); - plr->RemoveFromGroup(); + plr->GetSession()->SendLfgUpdateParty(LFG_UPDATETYPE_GROUP_FOUND); + plr->SetLfgUpdate(false); + if (plr->GetGroup() != grp) + { + plr->GetGroup()->SetLfgQueued(false); + plr->RemoveFromGroup(); + } + } + else + { + plr->GetSession()->SendLfgUpdatePlayer(LFG_UPDATETYPE_GROUP_FOUND); + plr->SetLfgUpdate(false); } if (!grp)