BlizzMove

BlizzMove

6M Downloads

[Bug Report] v3.5.24 introduces a conflict with AceHook

tflo opened this issue · 24 comments

commented

What game version did the bug occur in?

Retail

Troubleshooting

  • I have verified that BlizzMove is up to date.
  • I have tried to reproduce the bug with no other addons loaded.
  • I have verified that the issue hasn't yet been reported.

Describe the bug.

Does not occur with v3.5.23.

Note that the addon mentioned in the error log (Accountant_Classic) is irrelevant, as it is just the provider of the AceHook library (alphabetically first in the loading order).

Steps to reproduce.

Right after login/reload.

I had to tick the "I have tried to reproduce the bug with no other addons loaded" because it is required to post the ticket(!). But actually this is a conflict with another addon (AceHook), so this does not apply.

Expected behavior.

Should not conflict.

Errors

1x .../Accountant_Classic/Libs/AceHook-3.0-9/AceHook-3.0.lua:180: Attempting to rehook already active hook GetBagsShown.
[string "=[C]"]: ?
[string "@Accountant_Classic/Libs/AceHook-3.0-9/AceHook-3.0.lua"]:180: in function <.../Accountant_Classic/Libs/AceHook-3.0/AceHook-3.0.lua:118>
[string "@Accountant_Classic/Libs/AceHook-3.0-9/AceHook-3.0.lua"]:340: in function `SecureHook'
[string "@BlizzMove/BlizzMove.lua"]:1314: in function `?'
[string "@Accountant_Classic/Libs/CallbackHandler-1.0-8/CallbackHandler-1.0.lua"]:109: in function <...sic/Libs/CallbackHandler-1.0/CallbackHandler-1.0.lua:109>
[string "=[C]"]: ?
[string "@Accountant_Classic/Libs/CallbackHandler-1.0-8/CallbackHandler-1.0.lua"]:19: in function <...sic/Libs/CallbackHandler-1.0/CallbackHandler-1.0.lua:15>
[string "@Accountant_Classic/Libs/CallbackHandler-1.0-8/CallbackHandler-1.0.lua"]:54: in function `Fire'
[string "@Accountant_Classic/Libs/AceEvent-3.0-4/AceEvent-3.0.lua"]:120: in function <...ccountant_Classic/Libs/AceEvent-3.0/AceEvent-3.0.lua:119>

Locals:
(*temporary) = "Attempting to rehook already active hook GetBagsShown."
commented

I've had this error with 3 addons so far: Better Wardrobe and Transmog, BigDebuffs and now BlizzMove, as I disable them more keep showing up... I don't use BattlePetCountNG so something else is contributing to this for me at least. I'm continuing to test on my end, will follow up.

Here's the error I got in case it's useful:

1x ...ceBlizzMove/Libs/AceHook-3.0-9/AceHook-3.0.lua:180: Attempting to rehook already active hook GetBagsShown.
[string "=[C]"]: ?
[string "@BlizzMove/Libs/AceHook-3.0-9/AceHook-3.0.lua"]:180: in function <...ceBlizzMove/Libs/AceHook-3.0/AceHook-3.0.lua:118>
[string "@BlizzMove/Libs/AceHook-3.0-9/AceHook-3.0.lua"]:340: in function SecureHook' [string "@BlizzMove/BlizzMove.lua"]:1314: in function ?'
[string "@AllTheThings/lib/CallbackHandler-1.0-8/CallbackHandler-1.0.lua"]:109: in function <...ings/lib/CallbackHandler-1.0/CallbackHandler-1.0.lua:109>
[string "=[C]"]: ?
[string "@AllTheThings/lib/CallbackHandler-1.0-8/CallbackHandler-1.0.lua"]:19: in function <...ings/lib/CallbackHandler-1.0/CallbackHandler-1.0.lua:15>
[string "@AllTheThings/lib/CallbackHandler-1.0-8/CallbackHandler-1.0.lua"]:54: in function `Fire'
[string "@DataStore/libs/AceEvent-3.0-4/AceEvent-3.0.lua"]:120: in function <DataStore/libs/AceEvent-3.0/AceEvent-3.0.lua:119>

Locals:
(*temporary) = "Attempting to rehook already active hook GetBagsShown."

commented

Disabling BlizzMove fixed the errors in the other two add-ons I mentioned above. Seeing if I can figure out the conflict but I have a lot of add-ons, no promises...

commented

@raysmith59, for you it's also only with Blizz Move 3.5.24, or with the previous version (3.5.23) too?

commented

just go with the previous version of blizzmove for now, and it should be fine

commented

Just 3.5.24, 3.5.23 has no error.

commented

v3.5.25 should be available on CF soon, and fixes the problem

for anyone curious, the issues are caused when an addon using AceEvent, is loaded before BlizzMove, and registers the ADDON_LOADED event
this causes our code to run twice, and AceHook to complain that it's already done its job

thanks for the debugging on your ends

commented

Glad to hear it, I had at least a 4-way addon conflict causing my issue and I hadn't figured out the specific combo yet.

commented

Unfortunately couldn't figure out the specific conflict, tested BlizzMove with batches of other add-ons and didn't get the error so I figure it has to be a 3+ addon conflict... will keep testing for a bit.

commented

Confirmed that 3.5.25 works for me.

commented

Oh, that was fast. Thanks 😃

commented

I have to correct myself: If I load only with BM and BugSack and Accountant_Classic (to provide the Ace lib), the error does not occur. So something more must be involved…

commented

and this does not happen with no other addons enabled, or with an older blizzmove version?

commented

As said, does not occur with v3.5.23. I did not test with older versions before that, but I've never seen the error before, IIRC, and I'm using BM for quite a few years.

If I reload with a minimal addon set (or with only BM and BugSack), the error does not occur. But I guess this is due to the absence of AceHook…

commented

I installed now Ace3-Release-r1320 separately, and the error does not occur.

commented

And this is classic yes? (since you selected retail 🙂)
we'll take a look

commented

No, this is Retail. I don't play Classic.

commented

Accountant_Classic is a Retail addon, despite the name.

commented

I now reloaded with BM, BugSack, and BattlePetCount as the AceHook lib provider, and I get the error again. Reproducible.

commented

And the AceHook versions are the same:

-- @release $Id: AceHook-3.0.lua 1284 2022-09-25 09:15:30Z nevcairiel $

Weird…

commented

I'll have time to take a look later today probably, but if BM + BattlePetCount is reproduceable on my end, it should be easy enough to debug and fix 👍
(it's not caused by AceHook, but some other quirk, but I'll have to double-check what exactly is happening)

commented

I just verified again with BM v3.5.23 (because I couldn't believe it), but the error does definitely not occur, even with one of my regular addon sets.

commented

I hope that bug reports by other people will provide a better clue what is going on here, but – for the moment – rolling back to 3.5.23 seems a reasonable thing for me.

commented

if BM + BattlePetCount is reproduceable

It seems to be reproducible, yes. It's BattlePetCountNG.

commented

More precisely:

BM 3.5.24 alone: No error
BM 3.5.24 + Accountant_Classic: No error
BM 3.5.24 + BattlePetCountNG: Error with BattlePetCountNG's AceHook as source
BM 3.5.24 + Accountant_Classic + BattlePetCountNG: Error with Accountant_Classic's AceHook as source
BM 3.5.23 + whatever: No error