ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid/src/client.c
(Generate patch)

Comparing ircd-hybrid/src/client.c (file contents):
Revision 238 by db, Sat Nov 5 17:00:17 2005 UTC vs.
Revision 315 by michael, Fri Dec 23 11:56:34 2005 UTC

# Line 139 | Line 139 | free_client(struct Client *client_p)
139    assert(client_p != NULL);
140    assert(client_p != &me);
141    assert(client_p->hnext == client_p);
142  assert(client_p->invited.head == NULL);
142    assert(client_p->channel.head == NULL);
144  assert(dlink_list_length(&client_p->invited) == 0);
143    assert(dlink_list_length(&client_p->channel) == 0);
144  
145    MyFree(client_p->away);
# Line 149 | Line 147 | free_client(struct Client *client_p)
147  
148    if (MyConnect(client_p))
149    {
150 +    assert(dlink_list_length(&client_p->localClient->invited) == 0);
151 +    assert(client_p->localClient->invited.head == NULL);
152      assert(IsClosing(client_p) && IsDead(client_p));
153  
154      MyFree(client_p->localClient->response);
# Line 738 | Line 738 | exit_one_client(struct Client *source_p,
738      if (source_p->servptr->serv != NULL)
739        dlinkDelete(&source_p->lnode, &source_p->servptr->serv->users);
740  
741 <    /* If a person is on a channel, send a QUIT notice
742 <    ** to every client (person) on the same channel (so
743 <    ** that the client can show the "**signoff" message).
744 <    ** (Note: The notice is to the local clients *only*)
745 <    */
741 >    /*
742 >     * If a person is on a channel, send a QUIT notice
743 >     * to every client (person) on the same channel (so
744 >     * that the client can show the "**signoff" message).
745 >     * (Note: The notice is to the local clients *only*)
746 >     */
747      sendto_common_channels_local(source_p, 0, ":%s!%s@%s QUIT :%s",
748                                   source_p->name, source_p->username,
749                                   source_p->host, quitmsg);
750      DLINK_FOREACH_SAFE(lp, next_lp, source_p->channel.head)
751        remove_user_from_channel(lp->data);
752  
752    /* Clean up invitefield */
753    DLINK_FOREACH_SAFE(lp, next_lp, source_p->invited.head)
754      del_invite(lp->data, source_p);
755
753      add_history(source_p, 0);
754      off_history(source_p);
755  
# Line 762 | Line 759 | exit_one_client(struct Client *source_p,
759      /* Do local vs. remote processing here */
760      if (MyConnect(source_p))
761      {
762 +      /* Clean up invitefield */
763 +      DLINK_FOREACH_SAFE(lp, next_lp, source_p->invited.head)
764 +        del_invite(lp->data, source_p);
765 +
766        /* Clean up allow lists */
767        del_all_accepts(source_p);
768      }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines