diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/nickserv.c | 11 | ||||
-rw-r--r-- | src/tools/Makefile | 4 | ||||
-rw-r--r-- | src/users.c | 1 |
3 files changed, 11 insertions, 5 deletions
diff --git a/src/nickserv.c b/src/nickserv.c index a3a81f5ab..b839d637a 100644 --- a/src/nickserv.c +++ b/src/nickserv.c @@ -2306,7 +2306,7 @@ static int do_confirm(User * u) else notice_lang(s_NickServ, u, NICK_REGISTERED_NO_MASK, u->nick); - send_event(EVENT_NICK_REGISTED, u->nick); + send_event(EVENT_NICK_REGISTERED, u->nick); #ifndef USE_ENCRYPTION notice_lang(s_NickServ, u, NICK_PASSWORD_IS, na->nc->pass); #endif @@ -2754,6 +2754,7 @@ static int do_drop(User * u) NickRequest *nr = NULL; int is_servadmin = is_services_admin(u); int is_mine; /* Does the nick being dropped belong to the user that is dropping? */ + char *my_nick; if (readonly && !is_servadmin) { notice_lang(s_NickServ, u, NICK_DROP_DISABLED); @@ -2783,6 +2784,8 @@ static int do_drop(User * u) } is_mine = (u->na && (u->na->nc == na->nc)); + if (is_mine && !nick) + my_nick = sstrdup(na->nick); if (is_mine && !nick_identified(u)) { notice_lang(s_NickServ, u, NICK_IDENTIFY_REQUIRED, s_NickServ); @@ -2804,8 +2807,7 @@ static int do_drop(User * u) na->nick, na->nc->display, (na->nc->email ? na->nc->email : "none")); delnick(na); - - send_event(EVENT_NICK_DROPPED, nick); + send_event(EVENT_NICK_DROPPED, (my_nick ? my_nick : nick)); if (!is_mine) { if (WallDrop) @@ -2817,6 +2819,9 @@ static int do_drop(User * u) notice_lang(s_NickServ, u, NICK_X_DROPPED, nick); else notice_lang(s_NickServ, u, NICK_DROPPED); + if (my_nick) { + free(my_nick); + } } } return MOD_CONT; diff --git a/src/tools/Makefile b/src/tools/Makefile index 54e3ca8e8..7b3510539 100644 --- a/src/tools/Makefile +++ b/src/tools/Makefile @@ -1,5 +1,5 @@ -OBJS = anopesmpt.o -SRCS = anopesmpt.c +OBJS = anopesmtp.o +SRCS = anopesmtp.c INCLUDES = ../../include/services.h diff --git a/src/users.c b/src/users.c index 85c89648c..825b9d4fd 100644 --- a/src/users.c +++ b/src/users.c @@ -210,6 +210,7 @@ void delete_user(User * user) normalizeBuffer(user->realname), user->server->name); } } + send_event(EVENT_USER_LOGOFF, user->nick); if (debug >= 2) alog("debug: delete_user() called"); |