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

Comparing ircd-hybrid-7.2/src/client.c (file contents):
Revision 887 by michael, Thu Nov 1 11:54:48 2007 UTC vs.
Revision 889 by michael, Thu Nov 1 12:59:05 2007 UTC

# Line 722 | Line 722 | exit_one_client(struct Client *source_p,
722  
723    if (IsServer(source_p))
724    {
725 <    dlinkDelete(&source_p->lnode, &source_p->servptr->serv->servers);
725 >    dlinkDelete(&source_p->lnode, &source_p->servptr->serv->server_list);
726  
727      if ((lp = dlinkFindDelete(&global_serv_list, source_p)) != NULL)
728        free_dlink_node(lp);
729
730    if (!MyConnect(source_p))
731    {
732      source_p->from->serv->dep_servers--;
733      assert(source_p->from->serv->dep_servers > 0);
734    }
729    }
730    else if (IsClient(source_p))
731    {
732      if (source_p->servptr->serv != NULL)
733 <      dlinkDelete(&source_p->lnode, &source_p->servptr->serv->users);
733 >      dlinkDelete(&source_p->lnode, &source_p->servptr->serv->client_list);
734  
735      /* If a person is on a channel, send a QUIT notice
736      ** to every client (person) on the same channel (so
# Line 754 | Line 748 | exit_one_client(struct Client *source_p,
748  
749      watch_check_hash(source_p, RPL_LOGOFF);
750  
751 <    if (!MyConnect(source_p))
758 <    {
759 <      source_p->from->serv->dep_users--;
760 <      assert(source_p->from->serv->dep_users >= 0);
761 <    }
762 <    else
751 >    if (MyConnect(source_p))
752      {
753        /* Clean up invitefield */
754        DLINK_FOREACH_SAFE(lp, next_lp, source_p->localClient->invited.head)
# Line 822 | Line 811 | recurse_send_quits(struct Client *origin
811     * hidden behind fakename. If so, send out the QUITs -adx
812     */
813    if (hidden || !IsCapable(to, CAP_QS))
814 <    DLINK_FOREACH_SAFE(ptr, next, source_p->serv->users.head)
814 >    DLINK_FOREACH_SAFE(ptr, next, source_p->serv->client_list.head)
815      {
816        target_p = ptr->data;
817        sendto_one(to, ":%s QUIT :%s", target_p->name, splitstr);
818      }
819  
820 <  DLINK_FOREACH_SAFE(ptr, next, source_p->serv->servers.head)
820 >  DLINK_FOREACH_SAFE(ptr, next, source_p->serv->server_list.head)
821      recurse_send_quits(original_source_p, ptr->data, from, to,
822                         comment, splitstr, myname);
823  
# Line 852 | Line 841 | recurse_remove_clients(struct Client *so
841   {
842    dlink_node *ptr, *next;
843  
844 <  DLINK_FOREACH_SAFE(ptr, next, source_p->serv->users.head)
844 >  DLINK_FOREACH_SAFE(ptr, next, source_p->serv->client_list.head)
845      exit_one_client(ptr->data, quitmsg);
846  
847 <  DLINK_FOREACH_SAFE(ptr, next, source_p->serv->servers.head)
847 >  DLINK_FOREACH_SAFE(ptr, next, source_p->serv->server_list.head)
848    {
849      recurse_remove_clients(ptr->data, quitmsg);
850      exit_one_client(ptr->data, quitmsg);
851    }
863
864  assert(source_p->serv->dep_servers == 1);
865  assert(source_p->serv->dep_users == 0);
852   }
853  
854   /*

Diff Legend

Removed lines
+ Added lines
< Changed lines (old)
> Changed lines (new)