From 967ab4ab1ea0bd93b6ce8486e1ef24883070a602 Mon Sep 17 00:00:00 2001 From: Ben Lubar Date: Tue, 27 Jun 2017 13:47:33 -0500 Subject: [PATCH] autolabor: Fix an array bounds overrun when assigning haulers while traders are active. --- plugins/autolabor.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/plugins/autolabor.cpp b/plugins/autolabor.cpp index b8c89215e..95863ffb5 100644 --- a/plugins/autolabor.cpp +++ b/plugins/autolabor.cpp @@ -1311,6 +1311,10 @@ DFhackCExport command_result plugin_onupdate ( color_ostream &out ) continue; dwarfs[dwarf]->status.labors[labor] = false; } + if (dwarf_info[dwarf].state == IDLE || dwarf_info[dwarf].state == BUSY || dwarf_info[dwarf].state == EXCLUSIVE) + { + num_haulers--; + } continue; }