Changeset

13603:6e5124f72e9a

mod_admin_shell: Fix reporting origin module for commands The field `_provided_by` comes from module:provides(), but these items comes from moduel:add_item(), which include the originating module as a 'source' field of the event. However, this is absent when items are retrieved at a later time than the initial event.
author Kim Alvefur <zash@zash.se>
date Wed, 08 Jan 2025 08:11:02 +0100
parents 13602:5033029130f5
children 13604:a4217361c1c6
files plugins/mod_admin_shell.lua
diffstat 1 files changed, 1 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/plugins/mod_admin_shell.lua	Tue Jan 07 23:37:41 2025 +0100
+++ b/plugins/mod_admin_shell.lua	Wed Jan 08 08:11:02 2025 +0100
@@ -2543,7 +2543,7 @@
 local function new_item_handlers(command_host)
 	local function on_command_added(event)
 		local command = event.item;
-		local mod_name = command._provided_by and ("mod_"..command._provided_by) or "<unknown module>";
+		local mod_name = event.source and ("mod_"..event.source.name) or "<unknown module>";
 		if not schema.validate(command_metadata_schema, command) or type(command.handler) ~= "function" then
 			module:log("warn", "Ignoring command added by %s: missing or invalid data", mod_name);
 			return;