diff options
Diffstat (limited to 'src/server/mainwindow/mainwindow.cpp')
-rw-r--r-- | src/server/mainwindow/mainwindow.cpp | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/src/server/mainwindow/mainwindow.cpp b/src/server/mainwindow/mainwindow.cpp index 9a3bd76..8fbba96 100644 --- a/src/server/mainwindow/mainwindow.cpp +++ b/src/server/mainwindow/mainwindow.cpp @@ -416,17 +416,23 @@ void MainWindow::tryToUseRoomTemplate() QMap<QString, Room* > roomsList; SYSTEM_SETTINGS(conf); - if (!conf.contains("rooms")) { qDebug() << "Invalid config file!"; return; } + if (!conf.contains("rooms")) { qDebug() << "Invalid config file (no rooms are set)!"; return; } QStringList rooms = conf.value("rooms").toStringList(); qDebug() << rooms; QString myRoom = ""; - for (QString roomName : rooms) + for (QString roomId : rooms) { - conf.beginGroup(roomName); + conf.beginGroup(roomId); + QString roomName = conf.value("name").toString(); + + /* fallback to the old format where the room id was actually just the name */ + if (roomName == "") { + roomName = roomId; + } if (!conf.contains("mgrIP")) { - qDebug() << "Invalid config file!"; + qDebug() << "Invalid config file (room " << roomName << " needs a mgrIP)!"; return; } QMap<QString, QPoint> clientPositions; |