From bd1c639428b4d1edf34fe68148027c5d4897e45e Mon Sep 17 00:00:00 2001 From: "certus certus@31f1291d-b8d6-0310-a050-a5561fc1590b" Date: Thu, 2 Mar 2006 08:23:26 +0000 Subject: [PATCH] # BUILD : 1.7.13 (997) # BUGS : 418 # NOTES : Fixed TS6 stuff in channels.c, thx 2 Trystan. git-svn-id: svn://svn.anope.org/anope/trunk@997 31f1291d-b8d6-0310-a050-a5561fc1590b git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@722 5417fbe8-f217-4b02-8779-1006273d7864 --- Changes | 1 + src/channels.c | 31 ++++++++++++++++++++++++------- version.log | 6 +++++- 3 files changed, 30 insertions(+), 8 deletions(-) diff --git a/Changes b/Changes index 896cf53d7..3cccbf7bb 100644 --- a/Changes +++ b/Changes @@ -28,6 +28,7 @@ Provided by Anope Dev. - 2006 03/01 F Fixed memleak in do_mass_mode(). [#450] 03/01 F Fixed memleaks in cs_list.c, hs_list.c and ns_list.c. [#447] 03/01 F Fixed memleaks in hs_set.c. [#441] +03/01 F Fixed missing TS6 functionality in channels.c. [#418] Provided by nenolod. - 2006 02/03 A Support for Charybdis IRCd. [ #00] diff --git a/src/channels.c b/src/channels.c index e4ae41475..5ed5758c8 100644 --- a/src/channels.c +++ b/src/channels.c @@ -527,6 +527,8 @@ void do_join(const char *source, int ac, char **av) if (UseTS6 && ircd->ts6) { user = find_byuid(source); + if (!user) + user = finduser(source); } else { user = finduser(source); } @@ -627,11 +629,7 @@ void do_kick(const char *source, int ac, char **av) continue; } if (debug) { - if (UseTS6 && ircd->ts6) { - alog("debug: kicking %s from %s", user->nick, av[0]); - } else { - alog("debug: kicking %s from %s", s, av[0]); - } + alog("debug: kicking %s from %s", user->nick, av[0]); } for (c = user->chans; c && stricmp(av[0], c->chan->name) != 0; c = c->next); @@ -663,7 +661,13 @@ void do_part(const char *source, int ac, char **av) struct u_chanlist *c; char *channame; - user = finduser(source); + if (UseTS6 && ircd->ts6) { + user = find_byuid(source); + if (!user) + user = finduser(source); + } else { + user = finduser(source); + } if (!user) { if (debug) { alog("debug: PART from nonexistent user %s: %s", source, @@ -820,9 +824,12 @@ void do_sjoin(const char *source, int ac, char **av) if (UseTS6 && ircd->ts6) { user = find_byuid(s); + if (!user) + user = finduser(s); } else { user = finduser(s); } + if (!user) { if (debug) { alog("debug: SJOIN for nonexistent user %s on %s", s, @@ -903,7 +910,13 @@ void do_sjoin(const char *source, int ac, char **av) *end2++ = csmodes[(int) *s++]; *end2 = 0; - user = finduser(s); + if (UseTS6 && ircd->ts6) { + user = find_byuid(s); + if (!user) + user = finduser(s); + } else { + user = finduser(s); + } if (!user) { if (debug) { @@ -979,6 +992,8 @@ void do_sjoin(const char *source, int ac, char **av) if (UseTS6 && ircd->ts6) { user = find_byuid(s); + if (!user) + user = finduser(s); } else { user = finduser(s); } @@ -1035,6 +1050,8 @@ void do_sjoin(const char *source, int ac, char **av) } else if (ac == 2) { if (UseTS6 && ircd->ts6) { user = find_byuid(source); + if (!user) + user = finduser(s); } else { user = finduser(source); } diff --git a/version.log b/version.log index 64789e16e..552aa2c8d 100644 --- a/version.log +++ b/version.log @@ -9,10 +9,14 @@ VERSION_MAJOR="1" VERSION_MINOR="7" VERSION_PATCH="13" VERSION_EXTRA="-svn" -VERSION_BUILD="993" +VERSION_BUILD="997" # $Log$ # +# BUILD : 1.7.13 (997) +# BUGS : 418 +# NOTES : Fixed TS6 stuff in channels.c, thx 2 Trystan. +# # BUILD : 1.7.13 (993) # BUGS : 441 # NOTES : Fixed memleak in hs_set.c