Skip to content

[Issue] [3.3.5a] ADDON_ACTION_BLOCKED: ToggleMainUIVisibility calls Hide() on a protected frame during combat #41

Description

@jasonkattan

Issue type *

Bug

Server/AzerothCore version

AzerothCore Playerbots branch + mod-multibot-bridge, client 3.3.5a (12340)

Description *

Toggling the main MultiBot UI while in combat triggers the client's "MultiBot has been blocked from an action only available to the Blizzard UI" popup. The main frame (or a child of it) is protected, so Hide() from insecure addon code is blocked during combat lockdown. Addon: MultiBot-Chatless (MultiBot-4.0).

Steps to reproduce

1. Enter combat.
2. Toggle the main UI via the slash/chat command path (goes through MultiBotHandler.lua:2393 -> ToggleMainUIVisibility).
3. ADDON_ACTION_BLOCKED fires and the "blocked from an action" popup appears; the UI does not hide.

Expected behavior *

The main UI shows/hides in combat without triggering ADDON_ACTION_BLOCKED — or, if that's not possible, the toggle is deferred until combat ends.

Actual behavior / Errors

ADDON_ACTION_BLOCKED:AddOn 'MultiBot' tried to call the protected function ':Hide()'.
: in function Hide' MultiBot-4.0\Core\MultiBot.lua:12:124: in function <Interface\AddOns\MultiBot\Core\MultiBot.lua:139> MultiBot-4.0\Core\MultiBot.lua:151: in function <Interface\AddOns\MultiBot\Core\MultiBot.lua:12:128> MultiBot-4.0\Core\MultiBot.lua:1003: in function ToggleMainUIVisibility'
MultiBot-4.0\Core\MultiBotHandler.lua:2393: in function value' Interface\FrameXML\ChatFrame.lua:4070: in function ChatEdit_ParseText':
Interface\FrameXML\ChatFrame.lua:3660: in function ChatEdit_SendText': Interface\FrameXML\ChatFrame.lua:3698: in function ChatEdit_OnEnterPressed':
:":OnEnterPressed":1: in function <[string ":OnEnterPressed"]:1>

Crashlog / Gist link (optional)

No response

Screenshots

No response

Pre-submission checklist *

  • I searched for existing issues that match mine.
  • I tested with the minimum set of addons/changes.
  • I provided reproduction steps and/or relevant logs.

Additional context

Suggested fix: in ToggleMainUIVisibility (MultiBot.lua:1003), guard with InCombatLockdown() and defer the show/hide to PLAYER_REGEN_ENABLED or avoid making the main frame protected (e.g. don't parent secure templates to it) so plain Hide()/Show() stay legal in combat.

Captured with !BugGrabber/BugSack during a full Naxx25 session on the AzerothCore bridge setup, happy to test a fix.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions