diff options
author | geniusdex geniusdex@31f1291d-b8d6-0310-a050-a5561fc1590b <geniusdex geniusdex@31f1291d-b8d6-0310-a050-a5561fc1590b@5417fbe8-f217-4b02-8779-1006273d7864> | 2005-03-22 14:24:40 +0000 |
---|---|---|
committer | geniusdex geniusdex@31f1291d-b8d6-0310-a050-a5561fc1590b <geniusdex geniusdex@31f1291d-b8d6-0310-a050-a5561fc1590b@5417fbe8-f217-4b02-8779-1006273d7864> | 2005-03-22 14:24:40 +0000 |
commit | 2225f58c39d004e3fac4ec38e52daeb9884727be (patch) | |
tree | 031432698527695f7a603fe6691da60748738905 | |
parent | f005ab7da5ecd27df280057b926033ffb97ac292 (diff) |
BUILD : 1.7.8 (640) BUGS : 323 NOTES : Fixed /ns update setting +a if you had rights to get +q but already had it
git-svn-id: svn://svn.anope.org/anope/trunk@640 31f1291d-b8d6-0310-a050-a5561fc1590b
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@488 5417fbe8-f217-4b02-8779-1006273d7864
-rw-r--r-- | Changes | 1 | ||||
-rw-r--r-- | include/extern.h | 1 | ||||
-rw-r--r-- | src/channels.c | 1 | ||||
-rw-r--r-- | src/nickserv.c | 28 | ||||
-rw-r--r-- | version.log | 6 |
5 files changed, 9 insertions, 28 deletions
@@ -8,6 +8,7 @@ Provided by Anope Dev. <dev@anope.org> - 2005 02/13 A Internal Event support, see EVENTS in the doc folder for help [ #00] 02/05 A Support for Unreal 3.2 +I channel mode. [ #00] 02/03 A Merged anope-win32 branch into the main, now Win32 ready. [ #00] +03/22 F Wrong behaviour of /ns update for channel founders. [#323] 03/21 F Topics being set too often during bursts. [ #00] 03/16 F Send the correct numeric for a missing MOTD file. [#315] 03/16 F Wrong modes being set in certain cases with SJOIN. [#320] diff --git a/include/extern.h b/include/extern.h index bb0a278d8..6df37b26a 100644 --- a/include/extern.h +++ b/include/extern.h @@ -128,6 +128,7 @@ E void do_sjoin(const char *source, int ac, char **av); E void do_topic(const char *source, int ac, char **av); E void do_mass_mode(char *modes); +E void chan_set_correct_modes(User * user, Channel * c); E void restore_unsycned_topics(void); #define whosends(ci) ((!(ci) || !((ci)->botflags & BS_SYMBIOSIS) || !(ci)->bi || !(ci)->c || (ci)->c->usercount < BSMinUsers) ? s_ChanServ : (ci)->bi->nick) diff --git a/src/channels.c b/src/channels.c index eca6c25bf..3c4f2683e 100644 --- a/src/channels.c +++ b/src/channels.c @@ -22,7 +22,6 @@ Channel *chanlist[1024]; void add_ban(Channel * chan, char *mask); void add_exception(Channel * chan, char *mask); void add_invite(Channel * chan, char *mask); -void chan_set_correct_modes(User * user, Channel * c); void chan_adduser2(User * user, Channel * c); Channel *chan_create(char *chan); void chan_delete(Channel * c); diff --git a/src/nickserv.c b/src/nickserv.c index fd5f3b5e0..61a14c3b5 100644 --- a/src/nickserv.c +++ b/src/nickserv.c @@ -2659,35 +2659,11 @@ static int do_setmodes(User * u) { struct u_chanlist *uc; Channel *c; - char *chan; /* Walk users current channels */ for (uc = u->chans; uc; uc = uc->next) { - if ((c = uc->chan)) { - chan = c->name; - if (ircd->owner && should_mode_change(uc->status, CUS_OWNER) - && check_should_owner(u, chan)) { - chan_set_user_status(c, u, CUS_OWNER); - } else if (ircd->protect - && should_mode_change(uc->status, CUS_PROTECT) - && check_should_protect(u, chan)) { - chan_set_user_status(c, u, CUS_PROTECT); - } else if (ircd->admin - && should_mode_change(uc->status, CUS_PROTECT) - && check_should_protect(u, chan)) { - chan_set_user_status(c, u, CUS_PROTECT); - } else if (should_mode_change(uc->status, CUS_OP) - && check_should_op(u, chan)) { - chan_set_user_status(c, u, CUS_OP); - } else if (ircd->halfop - && should_mode_change(uc->status, CUS_HALFOP) - && check_should_halfop(u, chan)) { - chan_set_user_status(c, u, CUS_HALFOP); - } else if (should_mode_change(uc->status, CUS_VOICE) - && check_should_voice(u, chan)) { - chan_set_user_status(c, u, CUS_VOICE); - } - } + if ((c = uc->chan)) + chan_set_correct_modes(u, c); } return MOD_CONT; } diff --git a/version.log b/version.log index 77c7e442a..b890ee5be 100644 --- a/version.log +++ b/version.log @@ -8,10 +8,14 @@ VERSION_MAJOR="1" VERSION_MINOR="7" VERSION_PATCH="8" -VERSION_BUILD="639" +VERSION_BUILD="640" # $Log$ # +# BUILD : 1.7.8 (640) +# BUGS : 323 +# NOTES : Fixed /ns update setting +a if you had rights to get +q but already had it +# # BUILD : 1.7.8 (639) # BUGS : # NOTES : Some more fixing of the topic stuff to get it to work better with UnrealIRCd |