1
0
mirror of https://github.com/unrealircd/unrealircd.git synced 2026-07-06 01:33:13 +02:00

- Fixed bugs regarding HOOKTYPE_SERVER_QUIT: was sometimes called twice and could cause

crashes due read-after-free. Reported by SET (#0001988).
This commit is contained in:
Bram Matthys
2004-07-22 21:29:48 +00:00
parent c665636045
commit 0597307562
2 changed files with 4 additions and 5 deletions
+2
View File
@@ -288,3 +288,5 @@
AngryWolf.
- Applied patch from slePP for bug #0001252: if IPv6 was enabled then in some cases names
were not properly resolved. Original bug reported by kormat.
- Fixed bugs regarding HOOKTYPE_SERVER_QUIT: was sometimes called twice and could cause
crashes due read-after-free. Reported by SET (#0001988).
+2 -5
View File
@@ -597,11 +597,8 @@ int exit_client(aClient *cptr, aClient *sptr, aClient *from, char *comment)
for (acptr = client; acptr; acptr = next)
{
next = acptr->next;
if (IsServer(acptr) && acptr->srvptr == sptr) {
exit_client(sptr, acptr, /* RECURSION */
sptr, comment1);
RunHook(HOOKTYPE_SERVER_QUIT, acptr);
}
if (IsServer(acptr) && acptr->srvptr == sptr)
exit_client(sptr, acptr, sptr, comment1); /* RECURSION */
/*
* I am not masking SQUITS like I do QUITs. This
* is probobly something we could easily do, but