Kiwi Item Info

Kiwi Item Info

41.5k Downloads

KiwiItemInfo 2.2.3 and AutoBar don't get along.

b-morgan opened this issue ยท 22 comments

commented

This error occurs when mousing over one of AutoBar's extended buttons. Let me know if you need a screenshot.

16x KiwiItemInfo\Tooltip.lua:38: attempt to index local 'focus' (a nil value)
KiwiItemInfo\Tooltip.lua:38: in function <KiwiItemInfo\Tooltip.lua:33>
[C]: ?
[C]: ?
Skillet-Classic\Skillet-11302.nil.lua:1291: in function <Skillet-Classic\Skillet.lua:1290>
[C]: ?
[C]: ?
[C]: ?
[C]: ?
[C]: ?
Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:424: in function SetHyperlink' ...ceAutoBarClassic\AutoBarClassBasicButton.lua:82: in function TooltipShow'
...ceAutoBarClassic\AutoBarClassPopupButton.lua:64: in function <...ceAutoBarClassic\AutoBarClassPopupButton.lua:57>
[C]: ?
FrameXML\SecureHandlers.lua:266: in function <FrameXML\SecureHandlers.lua:263>
[C]: ?
FrameXML\SecureHandlers.lua:322: in function <FrameXML\SecureHandlers.lua:306>
(tail call): ?

Locals:
tooltip = GameTooltip {
0 =
SetQuestLogRewardSpell = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
default = 1
Show = defined =[C]:-1
SetHyperlink = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
SetShapeshift = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
hasMoney = 1
manualOrder =

{
}
questOrder =
{
}
SetCraftItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
SetQuestRewardSpell = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
comparing = false
TopOverlay = {
}
shownMoneyFrames = 2
SetPetAction = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
SetLootItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
SetQuestItem = defined =[C]:-1
SetTrainerService = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
numMoneyFrames = 5
SetMerchantItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
SetInboxItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
SetBuybackItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
shoppingTooltips =
{
}
LibExtraTipLeft =
{
}
SetQuestLogItem = defined =[C]:-1
SetTradeSkillItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
BottomOverlay = {
}
SetTalent = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
SetTradePlayerItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
_owner = QuestieFrame153 {
}
SetSendMailItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
updateTooltip = 0.069000
SetInventoryItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
SetTradeTargetItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
SetLootRollItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
npcOrder =
{
}
SetAuctionSellItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
SetBagItem = defined =[C]:-1
LibExtraTipRight =
{
}
miniMapIcon = false
__tamedCounts = false
needsReset = false
SetAuctionItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
}
i_name = "Strider Stew"
i_link = "|cffffffff|Hitem:5477::::::::29:::::::|h[Strider Stew]|h|r"
tooltipName = "GameTooltip"
focus = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = "attempt to index local 'focus' (a nil value)"
L = defined @KiwiItemInfo\Locale.lua:44

commented

I've made this change but I predict it will not change anything (except move the error to line 39, lol). The error is "attempt to index local 'focus' (a nil value)" which means on line 37, "local focus = GetMouseFocus()", GetMouseFocus() has failed.

AutoBar has a row of buttons on the screen representing items in various categories, for example, bandages. If you have multiple bandage types in your bags, i.e. Linen Bandages and Wool Bandages), Wool is shown but if you mouseover that button, it will open a popup showing both Linen and Wool.
The popup goes away when you move your mouse out of the button. It's the popup buttons that KiwiItemInfo is getting the error on.

commented

In Tooltip.lua,
on line 38, change local name = focus:GetName() to local name = focus and focus:GetName()

on line 61, before the end, add in,

		else
			-- might return in error of something :(
			return

Tell me how it reacts

image

commented

Any results?

commented

Different error:

2x KiwiItemInfo\Tooltip.lua:73: attempt to index local 'focus' (a nil value)
KiwiItemInfo\Tooltip.lua:73: in function <KiwiItemInfo\Tooltip.lua:33>
[C]: ?
[C]: ?
Skillet-Classic\Skillet-11302.nil.lua:1291: in function <Skillet-Classic\Skillet.lua:1290>
[C]: ?
[C]: ?
[C]: ?
[C]: ?
[C]: ?
Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:424: in function SetHyperlink' ...ceAutoBarClassic\AutoBarClassBasicButton.lua:82: in function TooltipShow'
...ceAutoBarClassic\AutoBarClassPopupButton.lua:64: in function <...ceAutoBarClassic\AutoBarClassPopupButton.lua:57>
[C]: ?
FrameXML\SecureHandlers.lua:266: in function <FrameXML\SecureHandlers.lua:263>
[C]: ?
FrameXML\SecureHandlers.lua:322: in function <FrameXML\SecureHandlers.lua:306>
(tail call): ?

Locals:
tooltip = GameTooltip {
0 =
SetQuestLogRewardSpell = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
SetHyperlink = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
SetTradeSkillItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
hasMoney = 1
SetCraftItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
SetQuestRewardSpell = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
comparing = false
Show = defined =[C]:-1
shownMoneyFrames = 2
SetPetAction = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
SetLootItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
SetQuestItem = defined =[C]:-1
SetTrainerService = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
numMoneyFrames = 3
SetInboxItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
SetBuybackItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
shoppingTooltips =

{
}
SetMerchantItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
SetQuestLogItem = defined =[C]:-1
BottomOverlay = {
}
SetTalent = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
SetTradePlayerItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
SetSendMailItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
LibExtraTipLeft =
{
}
updateTooltip = 0.157000
SetInventoryItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
__tamedCounts = false
LibExtraTipRight =
{
}
SetLootRollItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
default = 1
SetAuctionSellItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
SetBagItem = defined =[C]:-1
needsReset = false
SetShapeshift = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
SetTradeTargetItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
TopOverlay = {
}
SetAuctionItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
}
i_name = "Elixir of Minor Agility"
i_link = "|cffffffff|Hitem:2457::::::::29:::::::|h[Elixir of Minor Agility]|h|r"
tooltipName = "GameTooltip"
focus = nil
name = nil
itemName = "Elixir of Minor Agility"
itemLink = "|cffffffff|Hitem:2457::::::::29:::::::|h[Elixir of Minor Agility]|h|r"
itemRarity = 1
itemLevel = 12
itemMinLevel = 2
itemType = "Consumable"
itemSubType = "Consumable"
itemStackCount = 5
itemEquipLoc = ""
itemIcon = 134871
vendorPrice = 15
itemClassID = 0
itemSubClassID = 0
bindType = 0
expacID = 254
itemSetID = nil
isCraftingReagent = false
(*temporary) = false
(*temporary) = MerchantFrame {
0 =
TitleText = MerchantFrameTitleText {
}
portrait = MerchantFramePortrait {
}
LeftBorder = MerchantFrameLeftBorder {
}
TopRightCorner = MerchantFrameTopRightCorner {
}
TopLeftCorner = MerchantFrameTopLeftCorner {
}
Bg = MerchantFrameBg {
}
TopBorder = MerchantFrameTopBorder {
}
TopTileStreaks = MerchantFrameTopTileStreaks {
}
TitleBg = MerchantFrameTitleBg {
}
BottomBorder = MerchantFrameBottomBorder {
}
page = 1
OnLoad = defined @SharedXML\SharedUIPanelTemplates.lua:860
numTabs = 2
BotRightCorner = MerchantFrameBotRightCorner {
}
Inset = MerchantFrameInset {
}
CloseButton = MerchantFrameCloseButton {
}
BotLeftCorner = MerchantFrameBotLeftCorner {
}
PortraitFrame = MerchantFramePortraitFrame {
}
selectedTab = 1
RightBorder = MerchantFrameRightBorder {
}
}
(*t

commented

The error should disappear completely because I am ensuring that focus is there before indexing it via :GetName(), but if this change isn't working for you, I need to know this and I will see what I can do.

commented

I missed the focus and focus:GetName() change the first time. Trying again...

commented

Excuse me, I used both kiwi 2.2.3 and autobar 1.13.2.06 without any error messages. maybe it caused by other addons, In my opinion.

commented

This is the same error and the event handler prevents this already. Could you please list your addons

commented

Here's the addon list (from Swatter) AutoBarClassic is the one causing the issue for me.

Date: 2019-10-20 18:19:18
ID: 1
Error occured in: Global
Count: 1
Message: ..\AddOns\KiwiItemInfo\Tooltip.lua line 73:
attempt to index local 'focus' (a nil value)
Debug:
KiwiItemInfo\Tooltip.lua:73:
KiwiItemInfo\Tooltip.lua:33
[C]: ?
[C]: ?
Skillet-Classic\Skillet.lua:1291:
Skillet-Classic\Skillet.lua:1290
[C]: ?
[C]: ?
[C]: ?
[C]: ?
...\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:424: SetHyperlink()
...ce\AddOns\AutoBarClassic\AutoBarClassBasicButton.lua:82: TooltipShow()
...ce\AddOns\AutoBarClassic\AutoBarClassPopupButton.lua:64:
...ce\AddOns\AutoBarClassic\AutoBarClassPopupButton.lua:57
[C]: ?
..\FrameXML\SecureHandlers.lua:266:
..\FrameXML\SecureHandlers.lua:263
[C]: ?
..\FrameXML\SecureHandlers.lua:322:
..\FrameXML\SecureHandlers.lua:306
(tail call): ?
Locals:
tooltip = GameTooltip {
0 =
SetQuestLogRewardSpell = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
SetHyperlink = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
SetTradeSkillItem = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
hasMoney = 1
SetCraftItem = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
SetQuestRewardSpell = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
comparing = false
Show = defined =[C]:-1
shownMoneyFrames = 2
SetPetAction = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
SetLootItem = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
SetQuestItem = defined =[C]:-1
SetTrainerService = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
numMoneyFrames = 3
SetInboxItem = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
SetBuybackItem = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
shoppingTooltips =

{
}
SetMerchantItem = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
SetQuestLogItem = defined =[C]:-1
BottomOverlay = {
}
SetTalent = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
SetTradePlayerItem = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
SetSendMailItem = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
updateTooltip = 0.187000
SetInventoryItem = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
__tamedCounts = false
SetLootRollItem = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
default = 1
SetAuctionSellItem = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
SetBagItem = defined =[C]:-1
needsReset = false
SetShapeshift = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
SetTradeTargetItem = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
TopOverlay = {
}
SetAuctionItem = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
}
i_name = "Tough Jerky"
i_link = "[Tough Jerky]"
tooltipName = "GameTooltip"
focus = nil
name = nil
itemName = "Tough Jerky"
itemLink = "[Tough Jerky]"
itemRarity = 1
itemLevel = 5
itemMinLevel = 1
itemType = "Consumable"
itemSubType = "Consumable"
itemStackCount = 20
itemEquipLoc = ""
itemIcon = 133972
vendorPrice = 1
itemClassID = 0
itemSubClassID = 0
bindType = 0
expacID = 254
itemSetID = nil
isCraftingReagent = false
(*temporary) = false
(*temporary) = MerchantFrame {
0 =
TitleText = MerchantFrameTitleText {
}
portrait = MerchantFramePortrait {
}
LeftBorder = MerchantFrameLeftBorder {
}
TopRightCorner = MerchantFrameTopRightCorner {
}
TopLeftCorner = MerchantFrameTopLeftCorner {
}
Bg = MerchantFrameBg {
}
TopBorder = MerchantFrameTopBorder {
}
TopTileStreaks = MerchantFrameTopTileStreaks {
}
TitleBg = MerchantFrameTitleBg {
}
BottomBorder = MerchantFrameBottomBorder {
}
page = 1
OnLoad = defined @interface\SharedXML\SharedUIPanelTemplates.lua:860
numTabs = 2
BotRightCorner = MerchantFrameBotRightCorner {
}
Inset = MerchantFrameInset {
}
CloseButton = MerchantFrameCloseButton {
}
BotLeftCorner = MerchantFrameBotLeftCorner {
}
PortraitFrame = MerchantFramePortraitFrame {
}
selectedTab = 1
RightBorder = MerchantFrameRightBorder {
}
}
(*temporary) = false
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = "attempt to index local 'focu
AddOns:
AutoLog, v6.2.2
MoncaiCompare, v7.2.0
Swatter, v8.2.6377 (SwimmingSeadragon)
WowheadLooter, v11302
AccountantClassic, vv2.11.08.11302
APIInterface, v8.2.02
Atlas, vv1.45.01.11302
AtlasClassicWoW, vv1.45.00.11302.05
AtlasLootClassic, vv1.3.1
AtlasLootClassicData, vv1.3.1
AtlasLootClassicDungeonsAndRaids, vv1.3.1
AtlasLootClassicMaps, vv1.0.0
Auctionator, v8.1.0
AutoBarClassic, v1.13.2.06
BagBrother, v
Bagnon, v8.2.16
BeanCounter, v8.2.6422 (SwimmingSeadragon)
BetterVendorPrice, vv1.10.00
BootyBayGazette, v6.0.20191018
ClassicAuraDurations, v
ClassicCastbars, vv1.1.1
ClassicCastbarsOptions, v
Consume, v2.5.0
CopyPasta, v1.1.2
DagAssist, v1.1 for Classic
DBMCore, v1.13.16
DBMDefaultSkin, v
DBMStatusBarTimers, v
Details, v
DetailsTinyThreat, v
DPSTracker, v1.0 (Beta)
FishingBuddy, v0.6 Beta 1
GFWFeedOmaticclassic, v0.1
GrimoireKeeper, v
IceHUD, v1.12.7
InFlightLoad, v1.13.003
Informant, v8.2.6374 (SwimmingSeadragon)
KiwiItemInfo, vv2.2.3
Mapster, v1.8.5
MissingTradeSkillsList, v1.13.20
MonkeyBuddy, v
MonkeyLibrary, v
MonkeyQuest, v
MonkeyQuestLog, v
MonkeySpeed, vv3.4.0
PlayedLog, v2.6.7
QuestFrameFixer, v1.1.1
QuestIconDesaturation, v3.1
Questie, v4.3.0 0 37acad5
RealMobHealth, v2.13
RecipeRadarClassic, v1.0.0.22
Scrap, v13.19
ScrapCleaner, v8.2.0
ScrapSpotlight, v13.19
SkilletClassic, vr93
SlideBar, v8.2.6375 (SwimmingSeadragon)
Stubby, v8.2.6376 (SwimmingSeadragon)
TitanClassic, v1.1.1.11302
TitanClassicAmmo, v1.1.1.11302
TitanClassicBag, v1.1.1.11302
TitanClassicClock, v1.1.1.11302
TitanClassicGold, v1.1.1.11302
TitanClassicLocation, v1.1.1.11302
TitanClassicLootType, v1.1.1.11302
TitanClassicPerformance, v1.1.1.11302
TitanClassicRegen, v1.1.0.11302
TitanClassicRepair, v1.1.1.11302
TitanClassicVolume, v1.1.1.11302
TitanClassicXP, v1.1.1.11302
TomTom, vv11302-1.0.7
ViragDevTool, v0.22
Wardrobe, v2.0.0
WideQuestLog, v
BlizRuntimeLib_enUS v1.13.2.11302
(ck=7f5)

commented

Hmmm... I see Skillet on the list. I'm the author of that one. This is the code in question. AddItemNotesToTooltip is currently doing nothing (i.e. I have no notes to add).

local tooltipsToHook = { ItemRefTooltip, GameTooltip, ShoppingTooltip1, ShoppingTooltip2 };
for _, tooltip in pairs(tooltipsToHook) do
	if tooltip and tooltip:HasScript("OnTooltipSetItem") then
		if tooltip:GetScript("OnTooltipSetItem") then
			local oldOnTooltipSetItem = tooltip:GetScript("OnTooltipSetItem")
			tooltip:SetScript("OnTooltipSetItem", function(tooltip)
				oldOnTooltipSetItem(tooltip)
				Skillet:AddItemNotesToTooltip(tooltip)
			end)
		else
			tooltip:SetScript("OnTooltipSetItem", function(tooltip)
				Skillet:AddItemNotesToTooltip(tooltip)
			end)
		end
	end
end
commented

```Lua
-- code
```

This is how you syntax highlight btw.

Stop using :SetScript() and :GetScript() , this breaks functionality of other tooltip scripts. Each instance of tooltip that your event fires gives you a clean slate. This means that you don't have to worry about removing your functionality. https://wow.gamepedia.com/API_ScriptObject_HookScript . The reason SetScript() breaks everything is due to the fact that it can only have one direct script and you not only replace, but you introduce a race condition versus other plugins and their well defined events due to the 'super call' oldOnTooltipSetItem(...). So basically you have to expect somewhere is... well... undefined behavior of some sort that the GC probably trashed at some point. It's all too unclear really.

Anyways, I digressed. Let's use HookScript rather. It's a small change. When you interact with blizzard's stuff you hook it, but if you have your own frames, for example (yes GameTooltip is a frame), then you can SetScript all you want. Although, in order to use some events you'll probably have to inherit them.

If you disable Skillet does my addon run fine?

commented

I have rewritten Skillet-Classic to use HookScript instead of SetScript (code is simpler) and I have tested Kiwi 2.2.3 with both the rewritten Skillet-Classic and without Skillet-Classic. The error is the same (included below with Skillet-Classic disabled). If I find something other than AutoBar to cause the error, I'll try disabling it. @hu71e seems to indicate that its not an AutoBar caused issue.

Date: 2019-10-21 07:06:00
ID: 1
Error occured in: Global
Count: 1
Message: ..\AddOns\KiwiItemInfo\Tooltip.lua line 73:
attempt to index local 'focus' (a nil value)
Debug:
KiwiItemInfo\Tooltip.lua:73:
KiwiItemInfo\Tooltip.lua:33
[C]: ?
[C]: ?
[C]: ?
[C]: ?
[C]: ?
[C]: ?
...\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:424: SetHyperlink()
...ce\AddOns\AutoBarClassic\AutoBarClassBasicButton.lua:82: TooltipShow()
...ce\AddOns\AutoBarClassic\AutoBarClassPopupButton.lua:64:
...ce\AddOns\AutoBarClassic\AutoBarClassPopupButton.lua:57
[C]: ?
..\FrameXML\SecureHandlers.lua:266:
..\FrameXML\SecureHandlers.lua:263
[C]: ?
..\FrameXML\SecureHandlers.lua:322:
..\FrameXML\SecureHandlers.lua:306
(tail call): ?
Locals:
tooltip = GameTooltip {
0 =
SetQuestLogRewardSpell = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
SetHyperlink = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
SetShapeshift = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
hasMoney = 1
SetCraftItem = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
SetQuestRewardSpell = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
comparing = false
TopOverlay = {
}
shownMoneyFrames = 2
SetPetAction = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
SetLootItem = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
SetQuestItem = defined =[C]:-1
SetTrainerService = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
numMoneyFrames = 3
SetInboxItem = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
SetBuybackItem = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
shoppingTooltips =

{
}
SetMerchantItem = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
SetQuestLogItem = defined =[C]:-1
SetTradeTargetItem = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
SetTalent = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
SetTradePlayerItem = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
SetSendMailItem = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
updateTooltip = 0.154000
SetInventoryItem = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
default = 1
SetLootRollItem = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
__tamedCounts = false
SetAuctionSellItem = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
SetBagItem = defined =[C]:-1
needsReset = false
SetTradeSkillItem = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
BottomOverlay = {
}
Show = defined =[C]:-1
SetAuctionItem = defined @interface\AddOns\BeanCounter\libs\LibExtraTip\LibExtraTip.lua:418
}
i_name = "Tough Jerky"
i_link = "[Tough Jerky]"
tooltipName = "GameTooltip"
focus = nil
name = nil
itemName = "Tough Jerky"
itemLink = "[Tough Jerky]"
itemRarity = 1
itemLevel = 5
itemMinLevel = 1
itemType = "Consumable"
itemSubType = "Consumable"
itemStackCount = 20
itemEquipLoc = ""
itemIcon = 133972
vendorPrice = 1
itemClassID = 0
itemSubClassID = 0
bindType = 0
expacID = 254
itemSetID = nil
isCraftingReagent = false
(*temporary) = false
(*temporary) = MerchantFrame {
0 =
TitleText = MerchantFrameTitleText {
}
portrait = MerchantFramePortrait {
}
LeftBorder = MerchantFrameLeftBorder {
}
TopRightCorner = MerchantFrameTopRightCorner {
}
TopLeftCorner = MerchantFrameTopLeftCorner {
}
Bg = MerchantFrameBg {
}
TopBorder = MerchantFrameTopBorder {
}
TopTileStreaks = MerchantFrameTopTileStreaks {
}
TitleBg = MerchantFrameTitleBg {
}
BottomBorder = MerchantFrameBottomBorder {
}
page = 1
OnLoad = defined @interface\SharedXML\SharedUIPanelTemplates.lua:860
numTabs = 2
BotRightCorner = MerchantFrameBotRightCorner {
}
Inset = MerchantFrameInset {
}
CloseButton = MerchantFrameCloseButton {
}
BotLeftCorner = MerchantFrameBotLeftCorner {
}
PortraitFrame = MerchantFramePortraitFrame {
}
selectedTab = 1
RightBorder = MerchantFrameRightBorder {
}
}
(*temporary) = false
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = "attempt to index local 'focu
AddOns:
AutoLog, v6.2.2
MoncaiCompare, v7.2.0
Swatter, v8.2.6377 (SwimmingSeadragon)
WowheadLooter, v11302
AccountantClassic, vv2.11.08.11302
APIInterface, v8.2.02
Atlas, vv1.45.01.11302
AtlasClassicWoW, vv1.45.00.11302.05
AtlasLootClassic, vv1.3.1
AtlasLootClassicData, vv1.3.1
AtlasLootClassicDungeonsAndRaids, vv1.3.1
AtlasLootClassicMaps, vv1.0.0
Auctionator, v8.1.0
AutoBarClassic, v1.13.2.06
BagBrother, v
Bagnon, v8.2.16
BeanCounter, v8.2.6422 (SwimmingSeadragon)
BetterVendorPrice, vv1.10.00
BootyBayGazette, v6.0.20191018
ClassicAuraDurations, v
ClassicCastbars, vv1.1.1
ClassicCastbarsOptions, v
Consume, v2.5.0
CopyPasta, v1.1.2
DagAssist, v1.1 for Classic
DBMCore, v1.13.16
DBMDefaultSkin, v
DBMStatusBarTimers, v
Details, v
DetailsTinyThreat, v
DPSTracker, v1.0 (Beta)
FishingBuddy, v0.6 Beta 1
GFWFeedOmaticclassic, v0.1
GrimoireKeeper, v
IceHUD, v1.12.7
InFlightLoad, v1.13.003
Informant, v8.2.6374 (SwimmingSeadragon)
KiwiItemInfo, vv2.2.3
Mapster, v1.8.5
MissingTradeSkillsList, v1.13.20
MonkeyBuddy, v
MonkeyLibrary, v
MonkeyQuest, v
MonkeyQuestLog, v
MonkeySpeed, vv3.4.0
PlayedLog, v2.6.7
QuestFrameFixer, v1.1.1
QuestIconDesaturation, v3.1
Questie, v4.3.0 0 37acad5
RealMobHealth, v2.13
RecipeRadarClassic, v1.0.0.22
Scrap, v13.19
ScrapCleaner, v8.2.0
ScrapSpotlight, v13.19
SlideBar, v8.2.6375 (SwimmingSeadragon)
Stubby, v8.2.6376 (SwimmingSeadragon)
TitanClassic, v1.1.1.11302
TitanClassicAmmo, v1.1.1.11302
TitanClassicBag, v1.1.1.11302
TitanClassicClock, v1.1.1.11302
TitanClassicGold, v1.1.1.11302
TitanClassicLocation, v1.1.1.11302
TitanClassicLootType, v1.1.1.11302
TitanClassicPerformance, v1.1.1.11302
TitanClassicRegen, v1.1.0.11302
TitanClassicRepair, v1.1.1.11302
TitanClassicVolume, v1.1.1.11302
TitanClassicXP, v1.1.1.11302
TomTom, vv11302-1.0.7
ViragDevTool, v0.22
Wardrobe, v2.0.0
WideQuestLog, v
BlizRuntimeLib_enUS v1.13.2.11302
(ck=7de)

commented
commented

hello @b-morgan , I tested the Skillet-Classic 1.00beta7 and kiwiii and AutoBar, without any error.
I've marked out some of our common AddOns with the *** symbol that I hope will help you with your test.

your AddOns:
AutoLog, v6.2.2
MoncaiCompare, v7.2.0
Swatter, v8.2.6377 (SwimmingSeadragon)
WowheadLooter, v11302
AccountantClassic, vv2.11.08.11302
APIInterface, v8.2.02
***Atlas, vv1.45.01.11302
*** AtlasClassicWoW, vv1.45.00.11302.05
*** AtlasLootClassic, vv1.3.1
***AtlasLootClassicData, vv1.3.1
***AtlasLootClassicDungeonsAndRaids, vv1.3.1
***AtlasLootClassicMaps, vv1.0.0
Auctionator, v8.1.0
***AutoBarClassic, v1.13.2.06
BagBrother, v
Bagnon, v8.2.16
BeanCounter, v8.2.6422 (SwimmingSeadragon)
***BetterVendorPrice, vv1.10.00
BootyBayGazette, v6.0.20191018
ClassicAuraDurations, v
ClassicCastbars, vv1.1.1
ClassicCastbarsOptions, v
Consume, v2.5.0
CopyPasta, v1.1.2
DagAssist, v1.1 for Classic
***DBMCore, v1.13.16
***DBMDefaultSkin, v
***DBMStatusBarTimers, v
***Details, v
***DetailsTinyThreat, v
DPSTracker, v1.0 (Beta)
FishingBuddy, v0.6 Beta 1
GFWFeedOmaticclassic, v0.1
GrimoireKeeper, v
IceHUD, v1.12.7
InFlightLoad, v1.13.003
Informant, v8.2.6374 (SwimmingSeadragon)
***KiwiItemInfo, vv2.2.3
Mapster, v1.8.5
MissingTradeSkillsList, v1.13.20
MonkeyBuddy, v
MonkeyLibrary, v
MonkeyQuest, v
MonkeyQuestLog, v
MonkeySpeed, vv3.4.0
PlayedLog, v2.6.7
QuestFrameFixer, v1.1.1
QuestIconDesaturation, v3.1
***Questie, v4.3.0 0 37acad5
***RealMobHealth, v2.13
***RecipeRadarClassic, v1.0.0.22
Scrap, v13.19
ScrapCleaner, v8.2.0
ScrapSpotlight, v13.19
SlideBar, v8.2.6375 (SwimmingSeadragon)
Stubby, v8.2.6376 (SwimmingSeadragon)
TitanClassic, v1.1.1.11302
TitanClassicAmmo, v1.1.1.11302
TitanClassicBag, v1.1.1.11302
TitanClassicClock, v1.1.1.11302
TitanClassicGold, v1.1.1.11302
TitanClassicLocation, v1.1.1.11302
TitanClassicLootType, v1.1.1.11302
TitanClassicPerformance, v1.1.1.11302
TitanClassicRegen, v1.1.0.11302
TitanClassicRepair, v1.1.1.11302
TitanClassicVolume, v1.1.1.11302
TitanClassicXP, v1.1.1.11302
TomTom, vv11302-1.0.7
ViragDevTool, v0.22
Wardrobe, v2.0.0
WideQuestLog, v
BlizRuntimeLib_enUS v1.13.2.11302

commented

I work with atlasloot and questie . That better vendor price will get in the way as its already supported. AutoBar should work fully. I will get AutoBarClassic, v1.13.2.06 to test.

commented

With beta_001:

10x KiwiItemInfo\Tooltip.lua:77: attempt to index local 'focus' (a nil value)
KiwiItemInfo\Tooltip.lua:77: in function <KiwiItemInfo\Tooltip.lua:33>
[C]: ?
[C]: ?
[C]: ?
[C]: ?
[C]: ?
[C]: ?
[C]: ?
Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:424: in function SetHyperlink' ...ceAutoBarClassic\AutoBarClassBasicButton.lua:82: in function TooltipShow'
...ceAutoBarClassic\AutoBarClassPopupButton.lua:64: in function <...ceAutoBarClassic\AutoBarClassPopupButton.lua:57>
[C]: ?
FrameXML\SecureHandlers.lua:266: in function <FrameXML\SecureHandlers.lua:263>
[C]: ?
FrameXML\SecureHandlers.lua:322: in function <FrameXML\SecureHandlers.lua:306>
(tail call): ?

Locals:
tooltip = GameTooltip {
0 =
SetQuestLogRewardSpell = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
SetHyperlink = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
SetTradeSkillItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
hasMoney = 1
SetCraftItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
SetQuestRewardSpell = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
comparing = false
Show = defined =[C]:-1
shownMoneyFrames = 2
SetPetAction = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
SetLootItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
SetQuestItem = defined =[C]:-1
SetTrainerService = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
numMoneyFrames = 3
SetInboxItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
SetBuybackItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
shoppingTooltips =

{
}
SetMerchantItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
SetQuestLogItem = defined =[C]:-1
BottomOverlay = {
}
SetTalent = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
SetTradePlayerItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
SetSendMailItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
LibExtraTipLeft =
{
}
updateTooltip = 0.020000
SetInventoryItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
__tamedCounts = false
LibExtraTipRight =
{
}
SetLootRollItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
default = 1
SetAuctionSellItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
SetBagItem = defined =[C]:-1
needsReset = false
SetShapeshift = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
SetTradeTargetItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
TopOverlay = {
}
SetAuctionItem = defined @Auc-Advanced\Libs\LibExtraTip\LibExtraTip.lua:418
}
i_name = "Ice Cold Milk"
i_link = "|cffffffff|Hitem:1179::::::::18:::::::|h[Ice Cold Milk]|h|r"
tooltipName = "GameTooltip"
focus = nil
name = nil
itemName = "Ice Cold Milk"
itemLink = "|cffffffff|Hitem:1179::::::::18:::::::|h[Ice Cold Milk]|h|r"
itemRarity = 1
itemLevel = 15
itemMinLevel = 5
itemType = "Consumable"
itemSubType = "Consumable"
itemStackCount = 20
itemEquipLoc = ""
itemIcon = 132815
vendorPrice = 6
itemClassID = 0
itemSubClassID = 0
bindType = 0
expacID = 254
itemSetID = nil
isCraftingReagent = false
(*temporary) = false
(*temporary) = MerchantFrame {
0 =
TitleText = MerchantFrameTitleText {
}
portrait = MerchantFramePortrait {
}
LeftBorder = MerchantFrameLeftBorder {
}
TopRightCorner = MerchantFrameTopRightCorner {
}
TopLeftCorner = MerchantFrameTopLeftCorner {
}
Bg = MerchantFrameBg {
}
TopBorder = MerchantFrameTopBorder {
}
TopTileStreaks = MerchantFrameTopTileStreaks {
}
TitleBg = MerchantFrameTitleBg {
}
BottomBorder = MerchantFrameBottomBorder {
}
page = 1
OnLoad = defined @SharedXML\SharedUIPanelTemplates.lua:860
numTabs = 2
BotRightCorner = MerchantFrameBotRightCorner {
}
Inset = MerchantFrameInset {
}
CloseButton = MerchantFrameCloseButton {
}
BotLeftCorner = MerchantFrameBotLeftCorner {
}
PortraitFrame = MerchantFramePortraitFrame {
}
selectedTab = 1
RightBorder = MerchantFrameRightBorder {
}
}
(*temporary) = false
(*temporary) = nil
(*t

commented

I guess I'll have to do a binary search for the troublesome addon...

commented

Ok I dug deeper and I have found the source of the problem. I can't ensure that GetMouseFocus() ever goes off here. So I will need to extend line 77 to account for quantity by default being 0.

Done. Took two seconds.

-- Line 77
local count = focus and (focus.count or (focus.Count and tonumber(focus.Count:GetText()) or 1))

Down upstream will reflect different though. Please affirm that things work with you with this patch.

commented

I don't know what to do next. Here's about as minimalistic as I can get:

Date: 2019-10-21 20:59:50
ID: 1
Error occured in: Global
Count: 1
Message: ..\AddOns\KiwiItemInfo\Tooltip.lua line 77:
attempt to index local 'focus' (a nil value)
Debug:
KiwiItemInfo\Tooltip.lua:77:
KiwiItemInfo\Tooltip.lua:33
[C]: ?
[C]: SetHyperlink()
...ce\AddOns\AutoBarClassic\AutoBarClassBasicButton.lua:82: TooltipShow()
...ce\AddOns\AutoBarClassic\AutoBarClassPopupButton.lua:64:
...ce\AddOns\AutoBarClassic\AutoBarClassPopupButton.lua:57
[C]: ?
..\FrameXML\SecureHandlers.lua:266:
..\FrameXML\SecureHandlers.lua:263
[C]: ?
..\FrameXML\SecureHandlers.lua:322:
..\FrameXML\SecureHandlers.lua:306
(tail call): ?
Locals:
tooltip = GameTooltip {
0 =
updateTooltip = 0.200000
comparing = false
shoppingTooltips =

{
}
TopOverlay = {
}
default = 1
needsReset = true
BottomOverlay = {
}
hasMoney = 1
numMoneyFrames = 1
}
i_name = "Minor Healing Potion"
i_link = "[Minor Healing Potion]"
tooltipName = "GameTooltip"
focus = nil
name = nil
itemName = "Minor Healing Potion"
itemLink = "[Minor Healing Potion]"
itemRarity = 1
itemLevel = 5
itemMinLevel = 1
itemType = "Consumable"
itemSubType = "Consumable"
itemStackCount = 5
itemEquipLoc = ""
itemIcon = 134829
vendorPrice = 5
itemClassID = 0
itemSubClassID = 0
bindType = 0
expacID = 254
itemSetID = nil
isCraftingReagent = false
(*temporary) = false
(*temporary) = MerchantFrame {
0 =
TitleText = MerchantFrameTitleText {
}
portrait = MerchantFramePortrait {
}
LeftBorder = MerchantFrameLeftBorder {
}
TopRightCorner = MerchantFrameTopRightCorner {
}
TopLeftCorner = MerchantFrameTopLeftCorner {
}
Bg = MerchantFrameBg {
}
TopBorder = MerchantFrameTopBorder {
}
TopTileStreaks = MerchantFrameTopTileStreaks {
}
TitleBg = MerchantFrameTitleBg {
}
BottomBorder = MerchantFrameBottomBorder {
}
page = 1
OnLoad = defined @interface\SharedXML\SharedUIPanelTemplates.lua:860
numTabs = 2
BotRightCorner = MerchantFrameBotRightCorner {
}
Inset = MerchantFrameInset {
}
CloseButton = MerchantFrameCloseButton {
}
BotLeftCorner = MerchantFrameBotLeftCorner {
}
PortraitFrame = MerchantFramePortraitFrame {
}
selectedTab = 1
RightBorder = MerchantFrameRightBorder {
}
}
(*temporary) = false
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = "attempt to index local 'focus' (a nil value)"
L = defined @interface\AddOns\KiwiItemInfo\Locale.lua:44

AddOns:
Swatter, v8.2.6377 (SwimmingSeadragon)
AutoBarClassic, v1.13.2.06
KiwiItemInfo, vv2.2.4
BlizRuntimeLib_enUS v1.13.2.11302
(ck=89)

commented

Did you apply the patch I just wrote a bit ago?

It is live here https://www.curseforge.com/wow/addons/kiwi-item-info/files/2814136

commented

I am going to close this, as I have no such further issues after fixing what I reproduced from your problem.

commented

I did apply the patch and it worked. Sorry for not responding but I got consumed by reenabling all my addons. Thanks for figuring it out!