void ZoneServerImplementation::processMessage(Message* message) { ZonePacketHandler* zonePacketHandler = processor->getPacketHandler(); ZoneClientSession* client = zoneHandler->getClientSession(message->getClient()); Task* task = zonePacketHandler->generateMessageTask(client, message); if (task != NULL) { Core::getTaskManager()->executeTask(task, ((MessageCallback*)task)->getTaskQueue()); } delete message; }
void ZoneServerImplementation::processMessage(Message* message) { ZonePacketHandler* zonePacketHandler = processor->getPacketHandler(); auto client = zoneHandler->getClientSession(message->getClient()); Task* task = zonePacketHandler->generateMessageTask(client, message); if (task != NULL) { auto taskManager = Core::getTaskManager(); if (taskManager) { taskManager->executeTask(task); } else { delete task; } } delete message; }