frozn / TipTac

WoW AddOn TipTac Reborn
GNU General Public License v3.0
119 stars 25 forks source link

TipTac Ref Bug on mouseover #257

Closed aromagnoli closed 2 months ago

aromagnoli commented 12 months ago

Describe the bug Mouseover the progress bar at the portal after the speed gauntlet on Dawn of the Infinite Megadungeon.

To Reproduce Steps to reproduce the behavior:

  1. Click on the portal to start.
  2. Mouseover the progress bar.

Expected behavior I expected nothing to happened.

Screenshots Didnt took a screenshot. =(

TipTac Reborn (please complete the following information):

WoW (please complete the following information):

frozn commented 11 months ago

Unfortunately I don't have a character to go to this megadungeon. 🙈

To solve this issue I need the error log after mouseover the progress bar. Can you post this here the next time you encounter this error?

hollo6 commented 11 months ago

I'm having the same issue, below is my LUA error. (You can go there on HC now btw :) )

5x TipTac/ttCore.lua:2440: calling 'IsShown' on bad self (Usage: local isShown = self:IsShown()) [string "=[C]"]: in function IsShown' [string "@TipTac/ttCore.lua"]:2440: in functionResetCurrentDisplayParamsForAnchoring' [string "@TipTac/ttCore.lua"]:2478: in function <TipTac/ttCore.lua:2477> [string "=[C]"]: in function SetOwner' [string "@Blizzard_UIWidgets/Blizzard_UIWidgetTemplateBase.lua"]:63: in functionSetTooltipOwner' [string "@Blizzard_UIWidgets/Blizzard_UIWidgetTemplateBase.lua"]:69: in function `OnEnter' [string "@Blizzard_UIWidgets/Blizzard_UIWidgetTemplateBase.lua"]:622: in function <...Blizzard_UIWidgets/Blizzard_UIWidgetTemplateBase.lua:621>

Locals: (*temporary) = EmbeddedItemTooltip { 0 = ItemTooltip = Frame { } SetHyperlink = defined =[C]:-1 SetAzeriteEssence = defined =[C]:-1 SetVoidDepositItem = defined @SharedXML/Tooltip/TooltipDataHandler.lua:539 SetTraitEntry = defined @SharedXML/Tooltip/TooltipDataHandler.lua:539 ClearBackdrop = defined =[C]:-1 SetLootCurrency = defined @SharedXML/Tooltip/TooltipDataHandler.lua:539 SetWorldCursor = defined @FrameXML/GameTooltip.lua:1074 SetLootItem = defined @SharedXML/Tooltip/TooltipDataHandler.lua:539 GetSpell = defined @FrameXML/GameTooltip.lua:1112 SetQuestLogSpecialItem = defined @SharedXML/Tooltip/TooltipDataHandler.lua:539 SetRecipeReagentItem = defined =[C]:-1 SetMerchantItem = defined @SharedXML/Tooltip/TooltipDataHandler.lua:539 BottomOverlay = Texture { } SetSocketedRelic = defined @SharedXML/Tooltip/TooltipDataHandler.lua:539 ProcessInfo = defined @SharedXML/Tooltip/TooltipDataHandler.lua:335 NineSlice = Frame { } SetInventoryItem = defined @SharedXML/Tooltip/TooltipDataHandler.lua:539 TopEdge = Texture { } SetUnitDebuffByAuraInstanceID = defined =[C]:-1 GetProcessingTooltipInfo = defined @SharedXML/Tooltip/TooltipDataHandler.lua:488 SetBackdropColor = defined =[C]:-1 LeftEdge = Texture { } AddLineDataText = defined @SharedXML/Tooltip/TooltipDataHandler.lua:429 AppendInfo = defined @SharedXML/Tooltip/TooltipDataHandler.lua:525 SetSpellBookItem = defined =[C]:-1 textLeft1Font = "GameTooltipHeaderText" AppendInfoWithSpacer = defined @SharedXML/Tooltip/TooltipDataHandler.lua:531 SetShapeshift = defined @SharedXML/Tooltip/TooltipDataHandler.lua:539 SetArtifactPowerByID = defined @SharedXML/Tooltip/TooltipDataHandler.lua:539 textRight2Font = "GameTooltipText" TopOverlay = Texture { } SetSocketedItem = defined @SharedXML/Tooltip/TooltipDataHandler.lua:539 SetUnitDebuff = defined =[C]:-1 SetMountBySpellID = defined =[C]:-1 SetBorderBlendMode = defined @SharedXML/Backdrop.lua:266 SetTrainerService = defined @SharedXML/Tooltip/TooltipDataHandler.lua:539 TextLeft1 = EmbeddedItemTooltipTextLeft1 { } GetTooltipData = defined @SharedXML/Tooltip/TooltipDataHandler.lua:505 IsTooltipType = defined @SharedXML/Tooltip/TooltipDataHandler.lua:509 OnBackdropSizeChanged = defined @SharedXML/Backdrop.lua:182 ClearHandlerInfo = defined @SharedXML/Tooltip/TooltipDataHandler.lua:444 SetArtifactItem = defined @SharedXML/Tooltip/TooltipDataHandler.lua:539 StatusBar = EmbeddedItemTooltipStatusBar { } SetPossession = defined @SharedXML/Tooltip/TooltipDataHandler.lua:539 SetUnitAura = defined =[C]:-1 SetUnitBuffByAuraInstanceID = defined =[C]:-1 SetConduit = defined =[C]:-1 SetupPieceVisuals = defined @SharedXML/Backdrop.lua:246 SetMinimapMouseover = defined @SharedXML/Tooltip/TooltipDataHandler.lua:539 GetItem = defined @FrameXML/GameTooltip.lua:1108 SetRecipeResultItem = defined @SharedXML/Tooltip/TooltipDataHandler.lua:539 SetQuestPartyProgress = defined =[C]:-1 ProcessLineData = defined @SharedXML/Tooltip/TooltipDataHandler.lua:410 OnBackdropLoaded = defined @SharedXML/Backdrop.lua:152 SetPvpTalent = defined @SharedXML/Tooltip/TooltipDataHandler.lua:539 SetExistingSocketGem = defined @SharedXML/Tooltip/TooltipDataHandler.l

hollo6 commented 10 months ago

Same bug is happening in Amirdrassil at the portal after Nymue. And also triggers https://github.com/frozn/TipTac/issues/262 for both brokers.

hollo6 commented 4 months ago

Seeing "fixed errors regarding "calling ... on bad self"" in release notes, but this is still happening. Very easy to reproduce in LFR with the portal.

frozn commented 4 months ago

Implementing checks if e.g. the NameplateTooltip currently is forbidden in all TipTac functions adjusting the tooltip seems generally to be a good idea (see https://warcraft.wiki.gg/wiki/API_FrameScriptObject_IsForbidden). My hope was, that this probably fixes this "calling on bad self" problems too, bit I haven't seen this live for myself.

I will try reproducing this in LFR. Where exactly happened this error at the portal after Nymue? Hovering over it?

hollo6 commented 4 months ago

You can click on the portal to channel it, that's fine. The error pops up when you hover over the progress bar above the portal.

frozn commented 4 months ago

Can I repeat this multiple times?

hollo6 commented 4 months ago

I think the error pops every time you (re-)hover the progress bar. But it fills up pretty quickly so I don't know how many times you can actually do it per instance.

frozn commented 2 months ago

In the meantime this has been fixed. I added several IsForbidden() checks to make shure, that the tooltip isn't accessed while it's protected.