void Callback(QueryResult* result) { WorldSession* sess = sWorld.FindSession(accountId); if (!sess || !sess->GetPlayer() || sess->GetPlayer()->GetObjectGuid() != senderGuid || !sess->GetPlayer()->IsInWorld()) { delete result; delete this; return; } if (result) { Field *fields = result->Fetch(); mailsCount = fields[0].GetUInt32(); delete result; } sess->HandleSendMailCallback(this); delete this; }