X-Git-Url: http://git.pk910.de/?a=blobdiff_plain;f=ircd%2Flist.c;h=f6a11328ffedbc84b6f3f4a65309aa77b6bd9c15;hb=ccb26232551f5cf6abbddd0cfe175bc32ddf20f1;hp=dcbe466efb259a656984494edc052a5fa3fc1dc6;hpb=d2bbc267ec2358a585dd28f8abf16c76a2cb7eea;p=ircu2.10.12-pk.git diff --git a/ircd/list.c b/ircd/list.c index dcbe466..f6a1132 100644 --- a/ircd/list.c +++ b/ircd/list.c @@ -219,7 +219,6 @@ struct Client* make_client(struct Client *from, int status) cli_connect(cptr) = con; /* set the connection and other fields */ cli_since(cptr) = cli_lasttime(cptr) = cli_firsttime(cptr) = CurrentTime; cli_lastnick(cptr) = TStime(); - cli_unreg(cptr) = CLIREG_INIT; } else cli_connect(cptr) = cli_connect(from); /* use 'from's connection */ @@ -270,7 +269,7 @@ void free_client(struct Client* cptr) cptr, cli_connect(cptr))); if (cli_auth(cptr)) - destroy_auth_request(cli_auth(cptr), 0); + destroy_auth_request(cli_auth(cptr)); /* Make sure we didn't magically get re-added to the list */ assert(cli_next(cptr) == 0); @@ -428,6 +427,9 @@ void verify_client_list(void) */ struct SLink* make_link(void) { +#if 1 + struct SLink* lp = (struct SLink*) MyMalloc(sizeof(struct SLink)); +#else struct SLink* lp = slinkFreeList; if (lp) slinkFreeList = lp->next; @@ -435,8 +437,10 @@ struct SLink* make_link(void) lp = (struct SLink*) MyMalloc(sizeof(struct SLink)); links.alloc++; } +#endif assert(0 != lp); links.inuse++; + memset(lp, 0, sizeof(*lp)); return lp; } @@ -446,10 +450,14 @@ struct SLink* make_link(void) void free_link(struct SLink* lp) { if (lp) { +#if 1 + MyFree(lp); +#else lp->next = slinkFreeList; slinkFreeList = lp; +#endif + links.inuse--; } - links.inuse--; } /** Add an element to a doubly linked list.