diff options
-rw-r--r-- | CMakeLists.txt | 2 | ||||
-rw-r--r-- | doc/changelog.txt | 19 | ||||
-rw-r--r-- | src/CMakeLists.txt | 6 | ||||
-rw-r--r-- | src/client.cpp | 2 | ||||
-rw-r--r-- | src/environment.cpp | 7 | ||||
-rw-r--r-- | src/server.cpp | 10 |
6 files changed, 29 insertions, 17 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index ff6db1698..ec94768e0 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -9,7 +9,7 @@ project(minetest) set(VERSION_MAJOR 0) set(VERSION_MINOR 2) -set(VERSION_PATCH 201109xx_dev) +set(VERSION_PATCH 20110922_1) set(VERSION_STRING "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}") # Configuration options diff --git a/doc/changelog.txt b/doc/changelog.txt index 0b8f83636..66e0912cd 100644 --- a/doc/changelog.txt +++ b/doc/changelog.txt @@ -3,17 +3,20 @@ Minetest-c55 changelog This should contain all the major changes. For minor stuff, refer to the commit log of the repository. -X: -- Ladders +0.2.20110922_1: +- Make client report a newer version number to the server than 2011-07-31 does and make server disallow old clients + +0.2.20110922: +- Map is saved in an SQLite database file (by Queatz) +- Ladders (MarkTraceur) - Lava -- /me chat command -- Slightly better looking inventory (transparency) +- Apple trees (sfan5) +- Slightly better looking inventory with transparency +- /me chat command (Oblomov) +- Using chosen map seed possible through fixed_map_seed configuration option (kahrl) - Fix the long-existed PeerNotFound loop bug - Some translations and localization-related fixes -- Lots of small fixes, once again -- Using chosen map seed is now possible through fixed_map_seed configuration option -- Map is now saved in an SQLite database -- Fixed the nasty server-side infinite PeerNotFound loop bug +- Lots of small fixes 2011-07-31_3: - Fixes a bug that made the server to deny non-empty passwords from players connecting the first time diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index c479b4e73..c18bb64a7 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -188,10 +188,10 @@ if(BUILD_CLIENT) ${PNG_LIBRARIES} ${X11_LIBRARIES} ${GETTEXT_LIBRARY} - ${PLATFORM_LIBS} - ${CLIENT_PLATFORM_LIBS} ${JTHREAD_LIBRARY} ${SQLITE3_LIBRARY} + ${PLATFORM_LIBS} + ${CLIENT_PLATFORM_LIBS} ) endif(BUILD_CLIENT) @@ -200,9 +200,9 @@ if(BUILD_SERVER) target_link_libraries( ${PROJECT_NAME}server ${ZLIB_LIBRARIES} - ${PLATFORM_LIBS} ${JTHREAD_LIBRARY} ${SQLITE3_LIBRARY} + ${PLATFORM_LIBS} ) endif(BUILD_SERVER) diff --git a/src/client.cpp b/src/client.cpp index 2e3984bae..522fb8087 100644 --- a/src/client.cpp +++ b/src/client.cpp @@ -431,7 +431,7 @@ void Client::step(float dtime) snprintf((char*)&data[23], PASSWORD_SIZE, "%s", m_password.c_str()); // This should be incremented in each version - writeU16(&data[51], 1); + writeU16(&data[51], 2); // Send as unreliable Send(0, data, false); diff --git a/src/environment.cpp b/src/environment.cpp index 8103b7110..07c535b70 100644 --- a/src/environment.cpp +++ b/src/environment.cpp @@ -1345,8 +1345,6 @@ void ServerEnvironment::deactivateFarObjects(bool force_delete) i.atEnd()==false; i++) { ServerActiveObject* obj = i.getNode()->getValue(); - u16 id = i.getNode()->getKey(); - v3f objectpos = obj->getBasePosition(); // This shouldn't happen but check it if(obj == NULL) @@ -1357,9 +1355,12 @@ void ServerEnvironment::deactivateFarObjects(bool force_delete) continue; } + u16 id = i.getNode()->getKey(); + v3f objectpos = obj->getBasePosition(); + // The block in which the object resides in v3s16 blockpos_o = getNodeBlockPos(floatToInt(objectpos, BS)); - + // If block is active, don't remove if(m_active_blocks.contains(blockpos_o)) continue; diff --git a/src/server.cpp b/src/server.cpp index 689a2b538..304eb8920 100644 --- a/src/server.cpp +++ b/src/server.cpp @@ -2010,6 +2010,14 @@ void Server::ProcessData(u8 *data, u32 datasize, u16 peer_id) L"Your client is too old. Please upgrade."); return; } + + /* Uhh... this should actually be a warning but let's do it like this */ + if(net_proto_version < 2) + { + SendAccessDenied(m_con, peer_id, + L"Your client is too old. Please upgrade."); + return; + } /* Set up player @@ -4141,7 +4149,7 @@ void Server::UpdateCrafting(u16 peer_id) InventoryList *clist = player->inventory.getList("craft"); InventoryList *rlist = player->inventory.getList("craftresult"); - if(rlist->getUsedSlots() == 0) + if(rlist && rlist->getUsedSlots() == 0) player->craftresult_is_preview = true; if(rlist && player->craftresult_is_preview) |