aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rwxr-xr-xsrc/server/game/Chat/Channels/Channel.cpp4
-rwxr-xr-xsrc/server/game/OutdoorPvP/OutdoorPvP.cpp2
2 files changed, 4 insertions, 2 deletions
diff --git a/src/server/game/Chat/Channels/Channel.cpp b/src/server/game/Chat/Channels/Channel.cpp
index f031fe6f489..ce0647df935 100755
--- a/src/server/game/Chat/Channels/Channel.cpp
+++ b/src/server/game/Chat/Channels/Channel.cpp
@@ -48,10 +48,12 @@ Channel::Channel(const std::string& name, uint32 channel_id, uint32 Team)
{
channel_id = 0;
m_flags |= CHANNEL_FLAG_CUSTOM;
+
//load not built in channel if saved
std::string _name(name);
CharacterDatabase.escape_string(_name);
QueryResult result = CharacterDatabase.PQuery("SELECT m_announce, m_moderate, m_public, m_password, BannedList FROM channels WHERE m_name = '%s' AND m_team = '%u'", _name.c_str(), m_Team);
+
if (result)//load
{
Field *fields = result->Fetch();
@@ -187,7 +189,7 @@ void Channel::Join(uint64 p, const char *pass)
JoinNotify(p);
// if no owner first logged will become
- if (!IsConstant() && !m_ownerGUID)
+ if (!m_public || (!IsConstant() && !m_ownerGUID))
{
SetOwner(p, (players.size() > 1 ? true : false));
players[p].SetModerator(true);
diff --git a/src/server/game/OutdoorPvP/OutdoorPvP.cpp b/src/server/game/OutdoorPvP/OutdoorPvP.cpp
index 63996ef7534..88b02cb9661 100755
--- a/src/server/game/OutdoorPvP/OutdoorPvP.cpp
+++ b/src/server/game/OutdoorPvP/OutdoorPvP.cpp
@@ -166,7 +166,7 @@ bool OPvPCapturePoint::DelCreature(uint32 type)
//if (Map * map = sMapMgr.FindMap(cr->GetMapId()))
// map->Remove(cr,false);
// delete respawn time for this creature
- WorldDatabase.PExecute("DELETE FROM creature_respawn WHERE guid = '%u'", guid);
+ CharacterDatabase.PExecute("DELETE FROM creature_respawn WHERE guid = '%u'", guid);
cr->AddObjectToRemoveList();
sObjectMgr.DeleteCreatureData(guid);
m_CreatureTypes[m_Creatures[type]] = 0;