cornernote / minetest-inventory_plus

Allows additional formspec buttons to be added to the player inventory screen.
http://cornernote.github.io/minetest-inventory_plus/
Other
12 stars 4 forks source link

Crash 0.4.12-dev #4

Closed amadin closed 3 years ago

amadin commented 9 years ago

Crash 0.4.12-dev

2015-07-26 09:54:22: ERROR[main]: UNRECOVERABLE error occurred. Stopping server. Please fix the following error:
2015-07-26 09:54:22: ERROR[main]: .../../games/minetest_game/mods/inventory_plus/init.lua:60: attempt to index a nil value
2015-07-26 09:54:22: ERROR[main]: stack traceback:
2015-07-26 09:54:22: ERROR[main]:   .../../games/minetest_game/mods/inventory_plus/init.lua:60: in function 'get_formspec'
2015-07-26 09:54:22: ERROR[main]:   .../../games/minetest_game/mods/inventory_plus/init.lua:102: in function 'func'
2015-07-26 09:54:22: ERROR[main]:   /home/user/minetest/bin/../builtin/game/misc.lua:17: in function 'update_timers'
2015-07-26 09:54:22: ERROR[main]:   /home/user/minetest/bin/../builtin/game/misc.lua:49: in function '?'
2015-07-26 09:54:22: ERROR[main]:   /home/user/minetest/bin/../builtin/game/register.lua:341: in function </home/user/minetest/bin/../builtin/game/register.lua:329>

In thread 7f0629271740:
/home/user/minetest/minetest-master/src/server.cpp:509: void Server::step(float): A fatal error occurred: .../../games/minetest_game/mods/inventory_plus/init.lua:60: attempt to index a nil value
stack traceback:
    .../../games/minetest_game/mods/inventory_plus/init.lua:60: in function 'get_formspec'
    .../../games/minetest_game/mods/inventory_plus/init.lua:102: in function 'func'
    /home/user/minetest/bin/../builtin/game/misc.lua:17: in function 'update_timers'
    /home/user/minetest/bin/../builtin/game/misc.lua:49: in function '?'
    /home/user/minetest/bin/../builtin/game/register.lua:341: in function </home/user/minetest/bin/../builtin/game/register.lua:329>
Debug stacks:
DEBUG STACK FOR THREAD 7f060bfff700:
#0  virtual void* EmergeThread::Thread()
(Leftover data: #1  MapBlock* ServerMap::loadBlock(v3s16))
(Leftover data: #2  void ServerMap::loadBlock(std::string*, v3s16, MapSector*, bool))
(Leftover data: #3  void ItemStack::deSerialize(std::istream&, IItemDefManager*))
DEBUG STACK FOR THREAD 7f0618ef2700:
#0  virtual void* EmergeThread::Thread()
(Leftover data: #1  MapBlock* ServerMap::loadBlock(v3s16))
(Leftover data: #2  void ServerMap::loadBlock(std::string*, v3s16, MapSector*, bool))
(Leftover data: #3  void ItemStack::deSerialize(std::istream&, IItemDefManager*))
DEBUG STACK FOR THREAD 7f06198f3700:
#0  virtual void* EmergeThread::Thread()
(Leftover data: #1  MapBlock* ServerMap::loadBlock(v3s16))
(Leftover data: #2  void ServerMap::loadBlock(std::string*, v3s16, MapSector*, bool))
(Leftover data: #3  void ItemStack::deSerialize(std::istream&, IItemDefManager*))
DEBUG STACK FOR THREAD 7f061a2f4700:
#0  virtual void* CurlFetchThread::Thread()
DEBUG STACK FOR THREAD 7f061acf5700:
#0  virtual void* ServerThread::Thread()
#1  void Server::AsyncRunStep(bool)
#2  virtual void ServerEnvironment::step(float)
(Leftover data: #3  virtual MapBlock* ServerMap::emergeBlock(v3s16, bool): p=(-15,1,-20), create_blank=1)
(Leftover data: #4  void ItemStack::serialize(std::ostream&) const)
(Leftover data: #5  bool getCraftingResult(Inventory*, ItemStack&, std::vector<ItemStack>&, bool, IGameDef*))
(Leftover data: #6  bool getCraftingResult(Inventory*, ItemStack&, std::vector<ItemStack>&, bool, IGameDef*))
(Leftover data: #7  void ItemStack::deSerialize(std::istream&, IItemDefManager*))
DEBUG STACK FOR THREAD 7f0629271740:
#0  int main(int, char**)
#1  Dedicated server branch
#2  void dedicated_server_loop(Server&, bool&)
#3  void Server::step(float)
(Leftover data: #4  void Server::DenyAccess_Legacy(irr::u16, const wstring&))
(Leftover data: #5  void Server::SendAccessDenied_Legacy(irr::u16, const wstring&))
cornernote commented 9 years ago

Hello,

Thanks for reporting this.

Can you tell me when it happens? Is it when you start the server or when you do perform some action?

Does it happen every time?

cornernote commented 9 years ago

Can you please confirm on your version, line 60 in games/minetest_game/mods/inventory_plus/init.lua is the same as here:

player:get_inventory():set_width("craft", 3)

If this is the case I will have to ask the engine guys, cos I don't understand how that line can cause the error you have.

cornernote commented 9 years ago

Does this happen frequently, or has it just happened once? It would seem from the error that the player has left while the lua is running through a function. However this should not occur frequently. If it's a frequent problem then it may be something else. If its seldom then I'll put in a fix for what I think it is. Let me know.

cornernote commented 9 years ago

Please try the latest version (of dev-master) and see if that helps

cornernote commented 9 years ago

i mean the latest version of inventory_plus