diff --git a/src/commands/interface-manager/InterfaceCommand.ts b/src/commands/interface-manager/InterfaceCommand.ts index 6c214272..732b1407 100644 --- a/src/commands/interface-manager/InterfaceCommand.ts +++ b/src/commands/interface-manager/InterfaceCommand.ts @@ -91,8 +91,9 @@ export class CommandTable { if (table.next === undefined) { table.next = new Map(); } - const nextLookupEntry = {}; - table.next!.set(designator.shift()!, nextLookupEntry); + const currentDesignator = designator.shift()!; + const nextLookupEntry = table.next.get(currentDesignator) + ?? ((lookup: CommandLookupEntry) => (table.next?.set(currentDesignator, lookup), lookup))({}); internCommandHelper(nextLookupEntry, designator); } }