sylvanaar / prat-3-0

Prat-3.0 is a chat enhancement addon for world of warcraft
https://www.curseforge.com/wow/addons/prat-3-0
GNU General Public License v3.0
25 stars 45 forks source link

Invites.lua still uses removed InviteUnit instead of C_PartyInfo.InviteUnit #161

Closed KyrosKrane closed 3 years ago

KyrosKrane commented 3 years ago

Invites.lua apparently still has some instances where the removed global function InviteUnit() is called. This has been replaced with C_PartyInfo.InviteUnit(); it's a straight replacement with same parameters and same returns.

Steps to reproduce: 1) Have someone whisper you the word "invite" 2) Click the word.

Full lua error below.

Version Information (please complete the following information): [19:40:16] Dump: value=GetBuildInfo() [19:40:16] [1]="9.0.1", [19:40:16] [2]="36272", [19:40:16] [3]="Oct 15 2020", [19:40:16] [4]=90001

[19:40:23] Dump: value=Prat.Version [19:40:23] [1]="Prat |cff8080ff3.0|r (|cff8080ff3.9.0|r)"

Addons you are running This error is inherent to Prat code.

2x Prat-3.0-3.9.0\modules\Invites.lua:352: attempt to call global 'InviteUnit' (a nil value)
[string "@Prat-3.0-3.9.0\modules\Invites.lua"]:352: in function `linkfunc'
[string "@Prat-3.0-3.9.0\services\links.lua"]:108: in function <Prat-3.0\services\links.lua:97>
[string "=(tail call)"]: ?
[string "=(tail call)"]: ?
[string "=[C]"]: in function `SetHyperlink'
[string "@FrameXML\ItemRef.lua"]:611: in function `ItemRefSetHyperlink'
[string "@FrameXML\ItemRef.lua"]:378: in function <FrameXML\ItemRef.lua:11>
[string "=[C]"]: ?
[string "@Blizzard_CombatLog\Blizzard_CombatLog.lua"]:3520: in function <...aceBlizzard_CombatLog\Blizzard_CombatLog.lua:3461>
[string "=[C]"]: ?
[string "=[C]"]: in function `SetItemRef'
[string "@FrameXML\ChatFrame.lua"]:3906: in function <FrameXML\ChatFrame.lua:3905>
[string "=[C]"]: in function `ChatFrame_OnHyperlinkShow'
[string "*:OnHyperlinkClick"]:1: in function <[string "*:OnHyperlinkClick"]:1>
[string "=[C]"]: ?

Locals:
self = <table> {
 SetDefaultModuleLibraries = <function> defined @!KalielsTracker\Libs\AceAddon-3.0\AceAddon-3.0.lua:367
 Enable = <function> defined @!KalielsTracker\Libs\AceAddon-3.0\AceAddon-3.0.lua:294
 NewModule = <function> defined @!KalielsTracker\Libs\AceAddon-3.0\AceAddon-3.0.lua:235
 EnableModule = <function> defined @!KalielsTracker\Libs\AceAddon-3.0\AceAddon-3.0.lua:332
 modules = <table> {
 }
 GetModule = <function> defined @!KalielsTracker\Libs\AceAddon-3.0\AceAddon-3.0.lua:210
 IterateEmbeds = <function> defined @!KalielsTracker\Libs\AceAddon-3.0\AceAddon-3.0.lua:442
 SecureHookScript = <function> defined @Bartender4\libs\AceHook-3.0\AceHook-3.0.lua:410
 defaultModuleLibraries = <table> {
 }
 Invite_Link = <function> defined @Prat-3.0\modules\Invites.lua:343
 RawHookScript = <function> defined @Bartender4\libs\AceHook-3.0\AceHook-3.0.lua:395
 GetName = <function> defined @!KalielsTracker\Libs\AceAddon-3.0\AceAddon-3.0.lua:279
 name = "Prat_Invites"
 IsEnabled = <function> defined @!KalielsTracker\Libs\AceAddon-3.0\AceAddon-3.0.lua:451
 orderedModules = <table> {
 }
 DisableModule = <function> defined @!KalielsTracker\Libs\AceAddon-3.0\AceAddon-3.0.lua:350
 HookScript = <function> defined @Bartender4\libs\AceHook-3.0\AceHook-3.0.lua:366
 Player_Link = <function> defined @Prat-3.0\modules\Invites.lua:365
 baseName = "Prat-3.0"
 IsHooked = <function> defined @Bartender4\libs\AceHook-3.0\AceHook-3.0.lua:493
 InviteLink = <function> defined @Prat-3.0\modules\Invites.lua:404
 ScanForLinks = <function> defined @Prat-3.0\modules\Invites.lua:386
 IsModule = <function> defined @!KalielsTracker\Libs\AceAddon-3.0\AceAddon-3.0.lua:217
 db = <table> {
 }
 SetDefaultModuleState = <function> defined @!KalielsTracker\Libs\AceAddon-3.0\AceAddon-3.0.lua:387
 OnModuleEnable = <function> defined @Prat-3.0\modules\Invites.lua:258
 SetAltInvite = <function> defined @Prat-3.0\modules\Invites.lua:273
 SetEnabledState = <function> defined @!KalielsTracker\Libs\AceAddon-3.0\AceAddon-3.0.lua:424
 Hook = <function> defined @Bartender4\libs\AceHook-3.0\AceHook-3.0.lua:274
 enabledState = true
 UnhookAll = <function> defined @Bartender4\libs\AceHook-3.0\AceHook-3.0.lua:477
 SetItemRef = <function> defined @Prat-3.0\modules\Invites.lua:359
 PL = <table> {
 }
 hooks = <table> {
 }
 SetDefaultModulePrototype = <function> defined @!KalielsTracker\Libs\AceAddon-3.0\AceAddon-3.0.lua:409
 SecureHook = <function> defined @Bartender4\libs\AceHook-3.0\AceHook-3.0.lua:336
 IterateModules = <function> defined @!KalielsTracker\Libs\AceAddon-3.0\AceAddon-3.0.lua:437
 OnValueChanged = <function> defined @Prat-3.0\modules\Invites.lua:265
 RawHook = <function> defined @Bartender4\libs\AceHook-3.0\AceHook-3.0.lua:313
 Unhook = <function> defined @Bartender4\libs\AceHook-3.0\AceHook-3.0.lua:418
 moduleName = "Invites"
 defaultModuleState = true
 Disable = <function> defined @!KalielsTracker\Libs\AceAddon-3.0\AceAddon-3.0.lua:314
}
link = "invplr:Corspar-Bloodhoof"
text = ChatFrame10 {
 SetJustifyV = <function> defined =[C]:-1
 RefreshIfNecessary = <function> defined =[C]:-1
 OnPostShow = <function> defined =[C]:-1
 CalculateLineAlphaValueFromTimestamp = <function> defined =[C]:-1
 isLayoutDirty = true
 isDisplayDirty = true
 GetFading = <function> defined =[C]:-1
 IsTextCopyable = <function> defined =[C]:-1
 shouldFadeAfterInactivity = true
 SetIndentedWordWrap = <function> defined =[C]:-1
 GetJustifyV = <function> defined =[C]:-1
 SetFont = <function> defined =[C]:-1
 GetMaxLines = <function> defined =[C]:-1
 GetIndente

(Bug report is cut off there)

alphabitnz commented 3 years ago
6x Prat-3.0-3.9.0\modules\Invites.lua:393: attempt to call field 'CanInvite' (a nil value)
Prat-3.0-3.9.0\modules\Invites.lua:393: in function <Prat-3.0\modules\Invites.lua:386>
(tail call): ?
(tail call): ?
[C]: in function `gsub'
Prat-3.0-3.9.0\services\patterns.lua:197: in function `MatchPatterns'
Prat-3.0-3.9.0\addon\addon.lua:695: in function <Prat-3.0\addon\addon.lua:613>
(tail call): ?
FrameXML\ChatFrame.lua:2797: in function <FrameXML\ChatFrame.lua:2790>
(tail call): ?
(tail call): ?
[string "*:OnEvent"]:1: in function <[string "*:OnEvent"]:1>
FrameXML\FloatingChatFrame.lua:2555: in function <FrameXML\FloatingChatFrame.lua:2543>

Locals:
self = <table> {
 SetDefaultModuleLibraries = <function> defined @BlizzMove\Libs\AceAddon-3.0\AceAddon-3.0.lua:367
 Enable = <function> defined @BlizzMove\Libs\AceAddon-3.0\AceAddon-3.0.lua:294
 NewModule = <function> defined @BlizzMove\Libs\AceAddon-3.0\AceAddon-3.0.lua:235
 EnableModule = <function> defined @BlizzMove\Libs\AceAddon-3.0\AceAddon-3.0.lua:332
 modules = <table> {
 }
 GetModule = <function> defined @BlizzMove\Libs\AceAddon-3.0\AceAddon-3.0.lua:210
 IterateEmbeds = <function> defined @BlizzMove\Libs\AceAddon-3.0\AceAddon-3.0.lua:442
 SecureHookScript = <function> defined @ClassicRaidAssist\Libs\Ace3\AceHook-3.0\AceHook-3.0.lua:410
 defaultModuleLibraries = <table> {
 }
 Invite_Link = <function> defined @Prat-3.0\modules\Invites.lua:343
 RawHookScript = <function> defined @ClassicRaidAssist\Libs\Ace3\AceHook-3.0\AceHook-3.0.lua:395
 GetName = <function> defined @BlizzMove\Libs\AceAddon-3.0\AceAddon-3.0.lua:279
 name = "Prat_Invites"
 IsEnabled = <function> defined @BlizzMove\Libs\AceAddon-3.0\AceAddon-3.0.lua:451
 orderedModules = <table> {
 }
 DisableModule = <function> defined @BlizzMove\Libs\AceAddon-3.0\AceAddon-3.0.lua:350
 HookScript = <function> defined @ClassicRaidAssist\Libs\Ace3\AceHook-3.0\AceHook-3.0.lua:366
 Player_Link = <function> defined @Prat-3.0\modules\Invites.lua:365
 baseName = "Prat-3.0"
 IsHooked = <function> defined @ClassicRaidAssist\Libs\Ace3\AceHook-3.0\AceHook-3.0.lua:493
 InviteLink = <function> defined @Prat-3.0\modules\Invites.lua:404
 ScanForLinks = <function> defined @Prat-3.0\modules\Invites.lua:386
 IsModule = <function> defined @BlizzMove\Libs\AceAddon-3.0\AceAddon-3.0.lua:217
 db = <table> {
 }
 SetDefaultModuleState = <function> defined @BlizzMove\Libs\AceAddon-3.0\AceAddon-3.0.lua:387
 OnModuleEnable = <function> defined @Prat-3.0\modules\Invites.lua:258
 SetAltInvite = <function> defined @Prat-3.0\modules\Invites.lua:273
 SetEnabledState = <function> defined @BlizzMove\Libs\AceAddon-3.0\AceAddon-3.0.lua:424
 Hook = <function> defined @ClassicRaidAssist\Libs\Ace3\AceHook-3.0\AceHook-3.0.lua:274
 enabledState = true
 UnhookAll = <function> defined @ClassicRaidAssist\Libs\Ace3\AceHook-3.0\AceHook-3.0.lua:477
 SetItemRef = <function> defined @Prat-3.0\modules\Invites.lua:359
 PL = <table> {
 }
 hooks = <table> {
 }
 SetDefaultModulePrototype = <function> defined @BlizzMove\Libs\AceAddon-3.0\AceAddon-3.0.lua:409
 SecureHook = <function> defined @ClassicRaidAssist\Libs\Ace3\AceHook-3.0\AceHook-3.0.lua:336
 IterateModules = <function> defined @BlizzMove\Libs\AceAddon-3.0\AceAddon-3.0.lua:437
 OnValueChanged = <function> defined @Prat-3.0\modules\Invites.lua:265
 RawHook = <function> defined @ClassicRaidAssist\Libs\Ace3\AceHook-3.0\AceHook-3.0.lua:313
 Unhook = <function> defined @ClassicRaidAssist\Libs\Ace3\AceHook-3.0\AceHook-3.0.lua:418
 moduleName = "Invites"
 defaultModuleState = true
 Disable = <function> defined @BlizzMove\Libs\AceAddon-3.0\AceAddon-3.0.lua:314
}
text = "inv"
name = "redacted"
enabled = true
(*temporary) = nil
(*temporary) = "attempt to call field 'CanInvite' (a nil value)"
EVENTS_FOR_INVITE = <table> {
 CHAT_MSG_PARTY = true
 CHAT_MSG_GUILD = true
 CHAT_MSG_OFFICER = true
 CHAT_MSG_RAID_LEADER = true
 CHAT_MSG_YELL = true
 CHAT_MSG_RAID_WARNING = true
 CHAT_MSG_CHANNEL = true
 CHAT_MSG_SAY = true
 CHAT_MSG_WHISPER = true
 CHAT_MSG_RAID = true
}
KyrosKrane commented 3 years ago

I just pushed some new code to the pull request that fixes the CanInvite issue, and also adds compatibility for both retail and classic.