diff options
Diffstat (limited to 'src/gui/char_select.cpp')
-rw-r--r-- | src/gui/char_select.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/gui/char_select.cpp b/src/gui/char_select.cpp index cb85d39c..6389f5b0 100644 --- a/src/gui/char_select.cpp +++ b/src/gui/char_select.cpp @@ -235,14 +235,19 @@ void CharSelectDialog::serverCharSelect() flush(); } char_ID = RFIFOL(2); + + char mapName[17]; + mapName[17] = 0; + strncpy(mapName, RFIFOP(6), 16); + memset(map_path, '\0', 480); strcat(map_path, "maps/"); - strncat(map_path, RFIFOP(6), 479 - strlen(map_path)); + strncat(map_path, mapName, 479 - strlen(map_path)); map_address = RFIFOL(22); map_port = RFIFOW(26); state = GAME; - logger->log("CharSelect: Map: %s", map_name.c_str()); + logger->log("CharSelect: Map: %s", mapName); logger->log("CharSelect: Server: %s:%d", iptostring(map_address), map_port); RFIFOSKIP(28); close_session(); |