r308: Fix segfault when exporting more than one device.
[nbd.git] / nbd-server.c
index 527ed60..f31f812 100644 (file)
@@ -1451,7 +1451,7 @@ int serveloop(GArray* servers) {
                                        /* child */
                                        g_hash_table_destroy(children);
                                        for(i=0;i<servers->len;i++) {
-                                               serve=g_array_index(servers, SERVER*, i);
+                                               serve=&g_array_index(servers, SERVER, i);
                                                close(serve->socket);
                                        }
                                        /* FALSE does not free the
@@ -1571,9 +1571,9 @@ void daemonize(SERVER* serve) {
        }
        if(!*pidftemplate) {
                if(serve) {
-                       strncpy(pidftemplate, "/var/run/server.%d.pid", 255);
+                       strncpy(pidftemplate, "/var/run/nbd-server.%d.pid", 255);
                } else {
-                       strncpy(pidftemplate, "/var/run/server.pid", 255);
+                       strncpy(pidftemplate, "/var/run/nbd-server.pid", 255);
                }
        }
        snprintf(pidfname, 255, pidftemplate, serve ? serve->port : 0);