diff options
author | orwell96 <mono96.mml@gmail.com> | 2017-04-05 13:57:09 +0200 |
---|---|---|
committer | orwell96 <mono96.mml@gmail.com> | 2017-04-29 14:53:00 +0200 |
commit | f42b01c74bdc7e91d3def03125a0e24e6a3bb0d4 (patch) | |
tree | 58a7230e725eb15cf49eedb80254ae0fa88433d1 /advtrains/advtrains_luaautomation/interrupt.lua | |
parent | 337db2a573ccaa1672e713855022e96106679803 (diff) | |
download | advtrains-f42b01c74bdc7e91d3def03125a0e24e6a3bb0d4.tar.gz advtrains-f42b01c74bdc7e91d3def03125a0e24e6a3bb0d4.tar.bz2 advtrains-f42b01c74bdc7e91d3def03125a0e24e6a3bb0d4.zip |
Add pcall wrapper to prevent server crashes when advtrains throws an error
Instead, read save files again and restore state before the crash
Rebased to latest commit
Diffstat (limited to 'advtrains/advtrains_luaautomation/interrupt.lua')
-rw-r--r-- | advtrains/advtrains_luaautomation/interrupt.lua | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/advtrains/advtrains_luaautomation/interrupt.lua b/advtrains/advtrains_luaautomation/interrupt.lua index 4d59db5..b8fc879 100644 --- a/advtrains/advtrains_luaautomation/interrupt.lua +++ b/advtrains/advtrains_luaautomation/interrupt.lua @@ -22,6 +22,8 @@ function iq.add(t, pos, evtdata) end minetest.register_globalstep(function(dtime) +return advtrains.pcall(function() + if run then timer=timer + math.min(dtime, 0.2) for i=1,#queue do @@ -42,6 +44,7 @@ minetest.register_globalstep(function(dtime) end end end) +end) |