[srvx-commits] CVS: services/src hash.c,1.167,1.168 proto-p10.c,1.48,1.49
Brought to you by:
entrope
|
From: Zoot <zo...@us...> - 2002-12-15 18:41:28
|
Update of /cvsroot/srvx/services/src
In directory sc8-pr-cvs1:/tmp/cvs-serv29924/src
Modified Files:
hash.c proto-p10.c
Log Message:
Be aware that messages can and will cross; users aren't always necessarily alive when we hear about 'em.
Index: hash.c
===================================================================
RCS file: /cvsroot/srvx/services/src/hash.c,v
retrieving revision 1.167
retrieving revision 1.168
diff -C2 -r1.167 -r1.168
*** hash.c 14 Nov 2002 02:22:35 -0000 1.167
--- hash.c 15 Dec 2002 18:41:25 -0000 1.168
***************
*** 850,859 ****
safestrncpy(old_topic, channel->topic, sizeof(old_topic));
safestrncpy(channel->topic, topic, sizeof(channel->topic));
- safestrncpy(channel->topic_nick, user->nick, sizeof(channel->topic_nick));
channel->topic_time = now;
! /* Update the setter's idle time */
! if ((mn = GetUserMode(channel, user))) {
! mn->idle_since = now;
}
--- 850,862 ----
safestrncpy(old_topic, channel->topic, sizeof(old_topic));
safestrncpy(channel->topic, topic, sizeof(channel->topic));
channel->topic_time = now;
! if (user) {
! safestrncpy(channel->topic_nick, user->nick, sizeof(channel->topic_nick));
!
! /* Update the setter's idle time */
! if ((mn = GetUserMode(channel, user))) {
! mn->idle_since = now;
! }
}
Index: proto-p10.c
===================================================================
RCS file: /cvsroot/srvx/services/src/proto-p10.c,v
retrieving revision 1.48
retrieving revision 1.49
diff -C2 -r1.48 -r1.49
*** proto-p10.c 15 Dec 2002 06:49:57 -0000 1.48
--- proto-p10.c 15 Dec 2002 18:41:25 -0000 1.49
***************
*** 1231,1236 ****
static CMD_FUNC(cmd_part)
{
if (argc < 2) return 0;
! parse_foreach(argv[1], part_helper, NULL, NULL, NULL, GetUserH(origin));
return 1;
}
--- 1231,1243 ----
static CMD_FUNC(cmd_part)
{
+ struct userNode *user;
+
if (argc < 2) return 0;
! user = GetUserH(origin);
! if(!user) {
! /* A KILL, QUIT, etc. probably crossed PART. */
! return 0;
! }
! parse_foreach(argv[1], part_helper, NULL, NULL, NULL, user);
return 1;
}
***************
*** 1292,1295 ****
--- 1299,1308 ----
struct userNode *uNode = GetUserH(origin);
(void)argv;
+
+ if (!uNode) {
+ /* mumble...cross... */
+ return 0;
+ }
+
if (argc < 2) {
uNode->modes &= ~FLAGS_AWAY;
|