aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Chat/Channels
diff options
context:
space:
mode:
authorclick <none@none>2010-11-30 00:18:17 +0100
committerclick <none@none>2010-11-30 00:18:17 +0100
commite308d5cb44454715007fceba8fd548dca742dd0a (patch)
tree0bb6a24bbd8ada4fe385e3bbf7ea5e97b9067bba /src/server/game/Chat/Channels
parent3cb4a52d592c61877155d0c2e0e944e9ab4fe0de (diff)
Core: Fix creature_respawn handling in Outdoor PvP system, thanks to sombre for noticing
Closes issue 4971. --HG-- branch : trunk
Diffstat (limited to 'src/server/game/Chat/Channels')
-rwxr-xr-xsrc/server/game/Chat/Channels/Channel.cpp4
1 files changed, 3 insertions, 1 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);