aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Calendar/CalendarMgr.cpp
diff options
context:
space:
mode:
authorkaelima <kaelima@live.se>2012-03-02 12:23:16 +0100
committerkaelima <kaelima@live.se>2012-03-02 12:23:16 +0100
commit394dbf0cdceea425a1ad63ecebc614e29728d365 (patch)
treebc6ac08f53fa5cf98135545071fa60a7bdf8b875 /src/server/game/Calendar/CalendarMgr.cpp
parent254256668b9751177051a72135a400387fac1d19 (diff)
Core/Misc: Fix a crash in CalendarMgr::AddAction and initialize some wild pointers.
Diffstat (limited to 'src/server/game/Calendar/CalendarMgr.cpp')
-rw-r--r--src/server/game/Calendar/CalendarMgr.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/server/game/Calendar/CalendarMgr.cpp b/src/server/game/Calendar/CalendarMgr.cpp
index b286abba81e..761bbb9b496 100644
--- a/src/server/game/Calendar/CalendarMgr.cpp
+++ b/src/server/game/Calendar/CalendarMgr.cpp
@@ -375,7 +375,7 @@ void CalendarMgr::AddAction(CalendarAction const& action)
uint64 eventId = action.Invite.GetEventId();
uint64 inviteId = action.Invite.GetInviteId();
- CalendarEvent* calendarEvent;
+ CalendarEvent* calendarEvent = NULL;
if (action.GetInviteId() != action.Invite.GetInviteId())
calendarEvent = CheckPermisions(eventId, action.GetPlayer(), action.GetInviteId(), CALENDAR_RANK_MODERATOR);
else
@@ -395,7 +395,7 @@ void CalendarMgr::AddAction(CalendarAction const& action)
uint64 eventId = action.Invite.GetEventId();
uint64 inviteId = action.Invite.GetInviteId();
- CalendarEvent* calendarEvent;
+ CalendarEvent* calendarEvent = NULL;
if (action.GetInviteId() != action.Invite.GetInviteId())
calendarEvent = CheckPermisions(eventId, action.GetPlayer(), action.GetInviteId(), CALENDAR_RANK_OWNER);
else
@@ -420,6 +420,9 @@ void CalendarMgr::AddAction(CalendarAction const& action)
// already checked in CheckPermisions
CalendarInvite* invite = GetInvite(inviteId);
+ if (!invite)
+ return;
+
if (calendarEvent->GetCreatorGUID() == invite->GetInvitee())
{
action.GetPlayer()->GetSession()->SendCalendarCommandResult(CALENDAR_ERROR_DELETE_CREATOR_FAILED);