summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcertus certus@31f1291d-b8d6-0310-a050-a5561fc1590b <certus certus@31f1291d-b8d6-0310-a050-a5561fc1590b@5417fbe8-f217-4b02-8779-1006273d7864>2006-03-02 08:23:26 +0000
committercertus certus@31f1291d-b8d6-0310-a050-a5561fc1590b <certus certus@31f1291d-b8d6-0310-a050-a5561fc1590b@5417fbe8-f217-4b02-8779-1006273d7864>2006-03-02 08:23:26 +0000
commitbd1c639428b4d1edf34fe68148027c5d4897e45e (patch)
treee5ee171a981728c071dd5e60c0206099dd7dcf63
parentd7d057ea8028b46ea610788cc8a36417202496cd (diff)
# 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
-rw-r--r--Changes1
-rw-r--r--src/channels.c31
-rw-r--r--version.log6
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. <dev@anope.org> - 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. <nenolod@nenolod.net> - 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