aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Server/Protocol
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/game/Server/Protocol')
-rw-r--r--src/server/game/Server/Protocol/Handlers/QuestHandler.cpp3
-rw-r--r--src/server/game/Server/Protocol/Opcodes.cpp2
2 files changed, 4 insertions, 1 deletions
diff --git a/src/server/game/Server/Protocol/Handlers/QuestHandler.cpp b/src/server/game/Server/Protocol/Handlers/QuestHandler.cpp
index 2b2f5c661a2..3b78a53153f 100644
--- a/src/server/game/Server/Protocol/Handlers/QuestHandler.cpp
+++ b/src/server/game/Server/Protocol/Handlers/QuestHandler.cpp
@@ -264,6 +264,9 @@ void WorldSession::HandleQuestgiverQueryQuestOpcode(WorldPacket & recv_data)
void WorldSession::HandleQuestQueryOpcode(WorldPacket & recv_data)
{
+ if (!_player)
+ return;
+
uint32 quest;
recv_data >> quest;
sLog.outDebug("WORLD: Received CMSG_QUEST_QUERY quest = %u",quest);
diff --git a/src/server/game/Server/Protocol/Opcodes.cpp b/src/server/game/Server/Protocol/Opcodes.cpp
index beffe9dff0d..74fe40a3b6f 100644
--- a/src/server/game/Server/Protocol/Opcodes.cpp
+++ b/src/server/game/Server/Protocol/Opcodes.cpp
@@ -120,7 +120,7 @@ OpcodeHandler opcodeTable[NUM_MSG_TYPES] =
/*0x059*/ { "SMSG_ITEM_QUERY_MULTIPLE_RESPONSE", STATUS_NEVER, &WorldSession::Handle_ServerSide },
/*0x05A*/ { "CMSG_PAGE_TEXT_QUERY", STATUS_LOGGEDIN, &WorldSession::HandlePageTextQueryOpcode },
/*0x05B*/ { "SMSG_PAGE_TEXT_QUERY_RESPONSE", STATUS_NEVER, &WorldSession::Handle_ServerSide },
- /*0x05C*/ { "CMSG_QUEST_QUERY", STATUS_LOGGEDIN, &WorldSession::HandleQuestQueryOpcode },
+ /*0x05C*/ { "CMSG_QUEST_QUERY", STATUS_LOGGEDIN_OR_RECENTLY_LOGGOUT, &WorldSession::HandleQuestQueryOpcode },
/*0x05D*/ { "SMSG_QUEST_QUERY_RESPONSE", STATUS_NEVER, &WorldSession::Handle_ServerSide },
/*0x05E*/ { "CMSG_GAMEOBJECT_QUERY", STATUS_LOGGEDIN, &WorldSession::HandleGameObjectQueryOpcode },
/*0x05F*/ { "SMSG_GAMEOBJECT_QUERY_RESPONSE", STATUS_NEVER, &WorldSession::Handle_ServerSide },