]> git.lizzy.rs Git - minetest.git/commitdiff
Script API: Fix segfault in remove_detached_inventory
authorSmallJoker <mk939@ymail.com>
Sat, 10 Jul 2021 12:18:35 +0000 (14:18 +0200)
committerSmallJoker <mk939@ymail.com>
Sat, 10 Jul 2021 12:34:36 +0000 (14:34 +0200)
when minetest.remove_detached_inventory is called on script init, the environment is yet not set up,
hence m_env is still nullptr until all scripts are loaded

src/server/serverinventorymgr.cpp

index 2a80c9bbe8da1a036d9def8c1e3268a711f4cb0f..3aee003b4876423ae35972e1d0fa11940fe4e15a 100644 (file)
@@ -157,8 +157,8 @@ bool ServerInventoryManager::removeDetachedInventory(const std::string &name)
                        m_env->getGameDef()->sendDetachedInventory(
                                        nullptr, name, player->getPeerId());
 
-       } else {
-               // Notify all players about the change
+       } else if (m_env) {
+               // Notify all players about the change as soon ServerEnv exists
                m_env->getGameDef()->sendDetachedInventory(
                                nullptr, name, PEER_ID_INEXISTENT);
        }