]> git.lizzy.rs Git - minetest.git/commitdiff
Don't call a player event without having player to do a event for
authorsapier <Sapier at GMX dot net>
Thu, 21 Aug 2014 15:27:52 +0000 (17:27 +0200)
committersapier <Sapier at GMX dot net>
Thu, 21 Aug 2014 15:29:26 +0000 (17:29 +0200)
src/script/cpp_api/s_env.cpp
src/server.cpp

index 9ac9302ac67a14d5c6ae3255bbbe751656ab98a2..4b5feee96f88fdc1ce1cfcf7646082890ba45678 100644 (file)
@@ -61,6 +61,9 @@ void ScriptApiEnv::environment_Step(float dtime)
 void ScriptApiEnv::player_event(ServerActiveObject* player, std::string type)
 {
        SCRIPTAPI_PRECHECKHEADER
+       
+       if (player == NULL)
+               return;
 
        // Get minetest.registered_playerevents
        lua_getglobal(L, "minetest");
index 40857f84d72954b673c90ddda6af9d5b91cd83f2..920b9aa2d64c5e4ac9410ea8692774de3962371f 100644 (file)
@@ -4580,8 +4580,13 @@ bool Server::hudSetFlags(Player *player, u32 flags, u32 mask) {
 
        SendHUDSetFlags(player->peer_id, flags, mask);
        player->hud_flags = flags;
+       
+       PlayerSAO* playersao = player->getPlayerSAO();
+       
+       if (playersao == NULL)
+               return false;
 
-       m_script->player_event(player->getPlayerSAO(),"hud_changed");
+       m_script->player_event(playersao, "hud_changed");
        return true;
 }