aboutsummaryrefslogtreecommitdiff
path: root/advtrains_interlocking
diff options
context:
space:
mode:
authorMaverick2797 <git.maverick2797@gmail.com>2026-02-03 17:45:29 +0800
committerorwell <orwell@bleipb.de>2026-03-22 17:34:00 +0100
commit5368267878c49f2d1c79fbaa54b47c2cd563c9d4 (patch)
tree05b868aa2e9c804e929d8a2ac7643d346450f439 /advtrains_interlocking
parent067f1f0d22231d1006f71699d3ef9006a1c38064 (diff)
Fix crash when using "New Route From" based on an invalid route
Diffstat (limited to 'advtrains_interlocking')
-rw-r--r--advtrains_interlocking/route_ui.lua7
1 files changed, 7 insertions, 0 deletions
diff --git a/advtrains_interlocking/route_ui.lua b/advtrains_interlocking/route_ui.lua
index af1c94f..8622aeb 100644
--- a/advtrains_interlocking/route_ui.lua
+++ b/advtrains_interlocking/route_ui.lua
@@ -295,6 +295,13 @@ minetest.register_on_player_receive_fields(function(player, formname, fields)
end
if fields.newfrom then
+ local route_valid, err = advtrains.interlocking.check_route_valid(route, sigd)
+ if not route_valid then
+ minetest.close_formspec(pname, formname)
+ minetest.chat_send_player(pname, err)
+ return
+ end
+
advtrains.interlocking.init_route_prog(pname, sigd, route)
minetest.close_formspec(pname, formname)
tcbs.ars_ignore_next = nil