X-Git-Url: https://hackdaworld.org/gitweb/?p=physik%2Fnlsop.git;a=blobdiff_plain;f=nlsop_server.c;fp=nlsop_server.c;h=7f24e8cf3410ec72d626d94ea5a0be991731da56;hp=847249106dc42bf923ded9f61be6fd1ee1a1e2ca;hb=0fbb254a433dd25b5938be009d0835e2c6b17184;hpb=91008e022c3f45e48cc2fc6a366b578254b4512f diff --git a/nlsop_server.c b/nlsop_server.c index 8472491..7f24e8c 100644 --- a/nlsop_server.c +++ b/nlsop_server.c @@ -56,6 +56,7 @@ int *gi; t_net *gnet; t_event *gevent; t_list *gc_list; +t_list *gg_list; int alert; /* @@ -410,7 +411,14 @@ void destroy_it(int signum) { printf("connection to client (ch %d) fucked up!\n",*gi); event_math(gnet->connection[*gi].fd,gevent,READ,REMOVE); network_close(gnet,*gi); - list_del_current(gc_list); + if(list_search_data(gc_list,gi,sizeof(int))==L_SUCCESS) { + list_del_current(gc_list); + printf("removed client from list\n"); + } + if(list_search_data(gg_list,gi,sizeof(int))==L_SUCCESS) { + list_del_current(gg_list); + printf("removed gui from list\n"); + } alert=1; alarm(0); @@ -436,6 +444,7 @@ int main(int argc,char **argv) gnet=&net; gevent=&event; gc_list=&c_list; + gg_list=&g_list; /* tzzz ... */ allyouneed=(void *)addr;