tullamods / Dominos

A main actionbar replacement
https://tullamods.com/dominos
BSD 3-Clause "New" or "Revised" License
80 stars 26 forks source link

[Dragonflight] Edit Mode Related Execution Path Taint #701

Closed Tuller closed 7 months ago

Tuller commented 1 year ago

There are multiple instances reported of actions not working in combat, typically after encountering a loading screen. These are all likely sourced from taint introduced via the new Edit Mode UI.

hollo6 commented 1 year ago

Always happens after a pet battle, no combat involved.

maQZ89 commented 1 year ago

Heyho, as some others discribed it, it happens for me after a loading screen. Its not all keybinds, but most of them. It's not actionbar related. Is there a possible fix or information to fix this? I really like Dominos, but its hard to keep using it, if you have to /rl for every dungeon you enter.

Tuller commented 1 year ago

I'm still having a ton of trouble reproducing this one. At this point, I need people to do the the following:

  1. Enable taint logging via /console taintlog 2 (see https://wowpedia.fandom.com/wiki/CVar_taintLog)
  2. When action buttons no longer function, /console reloadui as soon as is convienent.
  3. Grab the file taint.log from the _retail_\Logs directory and attach it here. Please let me know what addons you're running.
hollo6 commented 1 year ago

Just found this:

1/17 12:01:21.068 Execution tainted by Dominos while reading DominosFrameextra - Interface/FrameXML/EditModeSystemTemplates.lua:449 ExtraAbilityContainer:SetSnappedToFrame() 1/17 12:01:21.068 Interface/FrameXML/EditModeSystemTemplates.lua:73 1/17 12:01:21.068 ExtraAbilityContainer:SetPoint() 1/17 12:01:21.068 Interface/AddOns/MoveAnything/Modules/Position.lua:237 RestoreOrgPoints() 1/17 12:01:21.068 Interface/AddOns/MoveAnything/Modules/Position.lua:125 Reset() 1/17 12:01:21.068 Interface/AddOns/MoveAnything/API.lua:327 Reset() 1/17 12:01:21.068 Interface/AddOns/MoveAnything/API.lua:243 1/17 12:01:21.068 xpcall() 1/17 12:01:21.068 Interface/AddOns/MoveAnything/MoveAnything.lua:1303 SyncFrames() 1/17 12:01:21.068 Interface/AddOns/MoveAnything/MoveAnything.lua:1274 SyncAllFrames() 1/17 12:01:21.068 Interface/AddOns/MoveAnything/MoveAnything.lua:5851

Which is curious because I don't even have the ExtraAbility module installed. I also happen to seem to have a lot less Dominos related taints since I'm not using that module. Furthermore, MA always causes taint during a pet battle, which, I think, is something where that bar is treated differently from every other situation. All this makes me think that these taints might be related to hiding/showing the ExtraAvility bar.

Tuller commented 1 year ago

May be worth removing the extra bar from Dominos.toc: https://github.com/tullamods/Dominos/blob/master/Dominos/Dominos.toc#L37

hollo6 commented 1 year ago

Thanks for the tip! I have removed that line and also noticed your recent commit for the stance bar and added that too. Will report if I find anything useful.

BlueLemon1 commented 1 year ago

To add some additional Info from me thus far: before the patch 10.0.5 : after loading screens, e.g. joining dungeon there was a chance for keybinds no longer working, which got fixed by /reload After patch 10.0.5: the above did not happen yet to me. But a more serious issue happens. Randomly infight comes the same lua error as before "Actionbar:SetAttribute". But the game is unplayable from then on and the fight is pretty much a wipe. Its huge fps losses and on Shapeshifting as a druid it is a freeze of couple of seconds. I gues because of the pagination of the bars.

So yeah pretty much unplayable so i kinda had to uninstall it.

calummitchell commented 1 year ago

Uploaded taint.log requested by Tuller.

taint.zip

My addons: Angry Keystones BigWigs BugGrabber BugSack ChatCopyPaste Clique ColorPickerPlus Details Dominos Doom_CooldownPulse Grid2 GTFO idTip_CommunityFork LeatrixPlus Lib: SharedMedia-3.0 LittleWigs Masque Method Raid Tools Mythic Dungeon Tools OmniCD PasteNG Plater Prat Premade Groups Filter Quartz Raider.IO Raven RCLootCouncil SexyMap SharedMedia SharedMedia Additional Fonts SharedMediaAdditionalSounds Simulationcraft TomTom WeakAuras Bagnon DejaCharacterStats

calummitchell commented 1 year ago

Weirdly I seem to only get this error on my hunter and not rogue, druid, shaman, warlock, mage. But it happens on my hunter consistently, so it's easy for me to reproduce. Let me know if you want me to perform any tests. I'm motivated to get this fixed.

Aideenwolf commented 1 year ago

I can 100% recreate the error by going into a dungeon, changing my talents, then tryin to hit something with one of my macro keys (keyboard press only. mouse clicking seems to work fine). As always reload fixes it.

taint.log

Addons: DBM WA Soundpack by Causese AchivementReminder ArkInvetory Config Rules Search Astral Keys Basic ChatMods Bazooka Options Broker: everything Broker Mounts Bug Grabber Bug Sack Can I Mog It? Clique Details Damage Meter Compare 2.0 Encounter Breakdown Dominos Config Progress Gathermate2 Data Handy Notes Bfa Dragonflight Legion Mists of Pand Shadowlands Stygia Warlords of dranor Wrath of the Litchking Krow's Achievement Filter Leatrix plus Mapster Masque Masque: Dominos Masque: Sleek Method Raid Tools Mythic Dungeon tools Narcissus oUF oUF_Drk Paragon Reputation Pawn PetBattleScripts Platter Postal RareScanner RareTracker Rarity Rematch Routes SavedInstances Simulationcraft Soulbind Conduit Manager SoundPack TipTac TomTom TullaCC TullaRange WeakAuras WorldQuestList XLoot Zereth Mortis Puzzle Helper

shengjiex98 commented 1 year ago

Just to add another data point. I'm experiencing the same issues recently and was able to capture the following log. I reloaded immediately after getting the Dominos has been blocked from protected function DominosActionButton52:SetAttribute() error. This happened after using portal to return to Valdrakken from an m+ dungeon.

taint.log

My addons !BugGrabber ACU AdvancedInterfaceOptions AngryKeystones BasicMinimap BasicMinimap_Options BattleGroundEnemies BigDebuffs BigWigs BigWigs_Aberrus BigWigs_BattleForAzeroth BigWigs_Core BigWigs_DragonIsles BigWigs_Options BigWigs_Plugins BigWigs_VaultOfTheIncarnates BugSack Capping Capping_Options Coordinates Details Details_Compare2 Details_DataStorage Details_EncounterDetails Details_RaidCheck Details_Streamer Details_TinyThreat Details_Vanguard Diminish Diminish_Options Dominos Dominos_Cast Dominos_Config Dominos_Progress Dominos_Roll eAlignUpdated HandyNotes HandyNotes_DragonGlyphs Leatrix_Plus LittleWigs LittleWigs_BattleForAzeroth LittleWigs_BurningCrusade LittleWigs_Cataclysm LittleWigs_Classic LittleWigs_Legion LittleWigs_MistsOfPandaria LittleWigs_Shadowlands LittleWigs_WarlordsOfDraenor LittleWigs_WrathOfTheLichKing LoggerHead Masque Masque_Dominos MistsOfTirnaScitheHelper MRT MythicDungeonTools OmniBar OmniCC OmniCC_Config OmniCD Plater Prat-3.0 Prat-3.0_Libraries RaiderIO RaiderIO_DB_EU_F RaiderIO_DB_EU_M RaiderIO_DB_EU_R RaiderIO_DB_KR_F RaiderIO_DB_KR_M RaiderIO_DB_KR_R RaiderIO_DB_TW_F RaiderIO_DB_TW_M RaiderIO_DB_TW_R RaiderIO_DB_US_F RaiderIO_DB_US_M RaiderIO_DB_US_R RCLootCouncil ShadowedUF_Options ShadowedUnitFrames SharedMedia Simulationcraft TinyTooltip-Reforged TomCats TomTom TradeSkillMaster TradeSkillMaster_AppHelper WeakAuras WeakAurasArchive WeakAurasModelPaths WeakAurasOptions WeakAurasTemplates
Neark92 commented 11 months ago

Is there any solution related to this issue? Kinda sad to uninstall an addon that I have been using for so long

Tuller commented 11 months ago

The only real solution to the problem is to not use Blizzards code for action buttons. That itself has issues, as click and hold casting is not possible with custom code.

gill0n commented 9 months ago

The only real solution to the problem is to not use Blizzards code for action buttons. That itself has issues, as click and hold casting is not possible with custom code.

Without any insight into the cause of the issue and just to confirm my understanding of this; should I take this as 'if you want click and hold casting, and to not have this bug - you have to use vanilla action bars'.

If one is ready to disregard click and hold stuff, I guess there are alternatives out there?

Tuller commented 9 months ago

Yes, I could simply just write my own action button implementation at that point (this is what Bartender does via LibActionButton).

Venkx commented 9 months ago

So, the solution could be for you to implement your own action button code for all classes except evokers, and then create "dominos for evokers" with the blizzard code, and everyone who doesn't play evoker wouldn't have that bug anymore?

Tuller commented 9 months ago

To clarify, I'm talking about the feature where you can hold a hotkey down and it'll continue to cast an ability until you release the key. This is different from the Evoker hold and release to cast different levels of a spell abilities.

Tuller commented 7 months ago

The beta version should hopefully resolve this error. Retail action buttons now use their own custom implementation