/[svn]/ircd-hybrid-7.2/src/s_conf.c
ViewVC logotype

Diff of /ircd-hybrid-7.2/src/s_conf.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 671 by michael, Tue Jun 13 07:15:38 2006 UTC revision 672 by michael, Tue Jun 13 07:28:30 2006 UTC
# Line 1326  detach_conf(struct Client *client_p, Con Line 1326  detach_conf(struct Client *client_p, Con
1326        case SERVER_TYPE:        case SERVER_TYPE:
1327          aconf = map_to_conf(conf);          aconf = map_to_conf(conf);
1328    
1329          /* Please, no ioccc entries - Dianora */          assert(aconf->clients > 0);
         if (aconf->clients > 0)  
           --aconf->clients;  
         if (aconf->clients == 0 && IsConfIllegal(aconf))  
           delete_conf_item(conf);  
1330    
1331          if ((aclass_conf = ClassPtr(aconf)) != NULL)          if ((aclass_conf = ClassPtr(aconf)) != NULL)
1332          {          {
1333            aclass = map_to_conf(aclass_conf);            aclass = map_to_conf(aclass_conf);
1334    
1335              assert(aclass->curr_user_count > 0);
1336    
1337            if (conf->type == CLIENT_TYPE)            if (conf->type == CLIENT_TYPE)
1338              remove_from_cidr_check(&client_p->localClient->ip, aclass);              remove_from_cidr_check(&client_p->localClient->ip, aclass);
1339            if (aclass->curr_user_count > 0)            if (--aclass->curr_user_count == 0 && aclass->active == 0)
             --aclass->curr_user_count;  
           if (aclass->active == 0 && aclass->curr_user_count <= 0)  
1340              delete_conf_item(aclass_conf);              delete_conf_item(aclass_conf);
1341          }          }
1342    
1343            if (--aconf->clients == 0 && IsConfIllegal(aconf))
1344              delete_conf_item(conf);
1345    
1346          break;          break;
1347    
1348        case LEAF_TYPE:        case LEAF_TYPE:

Legend:
Removed from v.671  
changed lines
  Added in v.672

svnadmin@ircd-hybrid.org
ViewVC Help
Powered by ViewVC 1.1.28