When deleting a room, delete its netconfig configdb entry instead of the netconfig...
[citadel.git] / citadel / room_ops.c
index abd5e14b1475020ab63db518e397a49fe5954099..f616d7e742214c4149a2709e0db0f8160884886b 100644 (file)
@@ -1132,6 +1132,7 @@ void CtdlDeleteRoom(struct ctdlroom *qrbuf)
 {
        struct floor flbuf;
        char filename[PATH_MAX];
+       char configdbkeyname[25];
 
        syslog(LOG_NOTICE, "Deleting room <%s>", qrbuf->QRname);
 
@@ -1143,9 +1144,9 @@ void CtdlDeleteRoom(struct ctdlroom *qrbuf)
        assoc_file_name(filename, sizeof filename, qrbuf, ctdl_image_dir);
        unlink(filename);
 
-       /* Delete the room's network config file */
-       assoc_file_name(filename, sizeof filename, qrbuf, ctdl_netcfg_dir);
-       unlink(filename);
+       /* Delete the room's network configdb entry */
+       netcfg_keyname(configdbkeyname, qrbuf->QRnumber);
+       CtdlDelConfig(configdbkeyname);
 
        /* Delete the messages in the room
         * (Careful: this opens an S_ROOMS critical section!)
@@ -1167,7 +1168,6 @@ void CtdlDeleteRoom(struct ctdlroom *qrbuf)
 }
 
 
-
 /*
  * Check access control for deleting a room
  */