$Log$
+ Revision 591.47 2002/06/18 16:34:06 error
+ * room_ops.c: Fix for old room record not being deleted when renaming
+ baseroom or aideroom
+
Revision 591.46 2002/06/16 21:01:11 ajc
* Allow Aides to create rooms in other users' namespaces (if global access
controls allow)
Fri Jul 10 1998 Art Cancro <ajc@uncensored.citadel.org>
* Initial CVS import
-
qrbuf.QRfloor = new_floor;
putroom(&qrbuf);
+ begin_critical_section(S_CONFIG);
+
+ /* If baseroom/aideroom name changes, update config */
+ if (!strncasecmp(old_name, config.c_baseroom, ROOMNAMELEN)) {
+ safestrncpy(config.c_baseroom, new_name, ROOMNAMELEN);
+ put_config();
+ }
+ if (!strncasecmp(old_name, config.c_aideroom, ROOMNAMELEN)) {
+ safestrncpy(config.c_aideroom, new_name, ROOMNAMELEN);
+ put_config();
+ }
+
+ end_critical_section(S_CONFIG);
+
/* If the room name changed, then there are now two room
* records, so we have to delete the old one.
*/
end_critical_section(S_QUICKROOM);
- begin_critical_section(S_CONFIG);
-
- /* If baseroom/aideroom name changes, update config */
- if (!strncasecmp(old_name, config.c_baseroom, ROOMNAMELEN)) {
- safestrncpy(config.c_baseroom, new_name, ROOMNAMELEN);
- put_config();
- }
- if (!strncasecmp(old_name, config.c_aideroom, ROOMNAMELEN)) {
- safestrncpy(config.c_aideroom, new_name, ROOMNAMELEN);
- put_config();
- }
-
- end_critical_section(S_CONFIG);
-
/* Adjust the floor reference counts if necessary */
if (new_floor != old_floor) {
lgetfloor(&flbuf, old_floor);