r226: Fix memory leakage: we need to allocate only one hash table for all our
authoryoe <yoe>
Wed, 27 Dec 2006 13:47:49 +0000 (13:47 +0000)
committeryoe <yoe>
Wed, 27 Dec 2006 13:47:49 +0000 (13:47 +0000)
children, not one per listening port...

nbd-server.c

index 3e6801a..ea81a7d 100644 (file)
@@ -1359,7 +1359,6 @@ void setup_serve(SERVER *serve) {
        sa.sa_flags = SA_RESTART;
        if(sigaction(SIGTERM, &sa, NULL) == -1)
                err("sigaction: %m");
-       children=g_hash_table_new_full(g_int_hash, g_int_equal, NULL, destroy_pid_t);
 }
 
 /**
@@ -1371,6 +1370,7 @@ void setup_servers(GArray* servers) {
        for(i=0;i<servers->len;i++) {
                setup_serve(&(g_array_index(servers, SERVER, i)));
        }
+       children=g_hash_table_new_full(g_int_hash, g_int_equal, NULL, destroy_pid_t);
 }
 
 /**