diff --git a/core/wasm_shims/tooldata/tooldata_probe_main.cc b/core/wasm_shims/tooldata/tooldata_probe_main.cc index 33b630c..81600c7 100644 --- a/core/wasm_shims/tooldata/tooldata_probe_main.cc +++ b/core/wasm_shims/tooldata/tooldata_probe_main.cc @@ -224,6 +224,12 @@ int main() { } alignas(EMC_TOOL_STAT) unsigned char toolstat_storage[sizeof(EMC_TOOL_STAT)] = {}; auto *toolstat = reinterpret_cast(toolstat_storage); + // LinuxCNC src/emc/tooldata/tooldata_nml.cc accepts a non-null table + // pointer before NML-backed tooldata operations can use it. + CANON_TOOL_TABLE nml_tool_table[CANON_POCKETS_MAX] = {}; + if (tool_nml_register(nml_tool_table) != 0) { + return 77; + } if (tool_mmap_creator(toolstat, 1) != 0) { return 15; }