WotLK 3.4.1 - Friendlist Bug
Blumberg1337 opened this issue ยท 2 comments
There seems to be errors with symbols in chat when friends go online as well as with the friend list itself. Here is what BugSack logs (Locals seem to be fine, but copied them anyway):
23x ...dOns/ProjectAzilroka/Modules/EnhancedFriendsList.lua:80: attempt to call method 'SetGradientAlpha' (a nil value)
[string "@ProjectAzilroka/Modules/EnhancedFriendsList.lua"]:80: in function SetGradientColor' [string "@ProjectAzilroka/Modules/EnhancedFriendsList.lua"]:203: in function <...dOns/ProjectAzilroka/Modules/EnhancedFriendsList.lua:108> [string "=(tail call)"]: ? [string "=[C]"]: in function
FriendsFrame_UpdateFriendButton'
[string "@FrameXML/FriendsFrame_Shared.lua"]:1137: in function FriendsFrame_UpdateFriends' [string "@FrameXML/FriendsFrame_Shared.lua"]:530: in function
FriendsList_Update'
[string "@FrameXML/FriendsFrame_Shared.lua"]:273: in function <FrameXML/FriendsFrame_Shared.lua:272>
[string "=[C]"]: in function Show' [string "@Interface_Wrath/FrameXML/UIParent.lua"]:2214: in function
SetUIPanel'
[string "@Interface_Wrath/FrameXML/UIParent.lua"]:2059: in function ShowUIPanel' [string "@Interface_Wrath/FrameXML/UIParent.lua"]:1927: in function <Interface_Wrath/FrameXML/UIParent.lua:1923> [string "=[C]"]: in function
SetAttribute'
[string "@Interface_Wrath/FrameXML/UIParent.lua"]:2733: in function ShowUIPanel' [string "@FrameXML/FriendsFrame_Shared.lua"]:980: in function
ToggleFriendsFrame'
[string "TOGGLEFRIENDSTAB"]:1: in function <[string "TOGGLEFRIENDSTAB"]:1>
Locals:
self =
SetDefaultModuleLibraries = defined @Atlas/Libs/AceAddon-3.0/AceAddon-3.0.lua:363
Enable = defined @Atlas/Libs/AceAddon-3.0/AceAddon-3.0.lua:290
NewModule = defined @Atlas/Libs/AceAddon-3.0/AceAddon-3.0.lua:231
EnableModule = defined @Atlas/Libs/AceAddon-3.0/AceAddon-3.0.lua:328
modules =
}
GetModule = defined @Atlas/Libs/AceAddon-3.0/AceAddon-3.0.lua:206
IterateEmbeds = defined @Atlas/Libs/AceAddon-3.0/AceAddon-3.0.lua:438
hooks =
}
SecureHook = defined @ElvUI_Libraries/Core/Ace3/AceHook-3.0/AceHook-3.0.lua:335
defaultModuleLibraries =
}
TimeLeft = defined @Details/Libs/AceTimer-3.0/AceTimer-3.0.lua:172
baseName = "ProjectAzilroka"
CreateTexture = defined @ProjectAzilroka/Modules/EnhancedFriendsList.lua:85
RawHookScript = defined @ElvUI_Libraries/Core/Ace3/AceHook-3.0/AceHook-3.0.lua:394
ScheduleRepeatingTimer = defined @Details/Libs/AceTimer-3.0/AceTimer-3.0.lua:129
CancelAllTimers = defined @Details/Libs/AceTimer-3.0/AceTimer-3.0.lua:160
GetName = defined @Atlas/Libs/AceAddon-3.0/AceAddon-3.0.lua:275
HandleBN = defined @ProjectAzilroka/Modules/EnhancedFriendsList.lua:296
SetDefaultModulePrototype = defined @Atlas/Libs/AceAddon-3.0/AceAddon-3.0.lua:405
GetOptions = defined @ProjectAzilroka/Modules/EnhancedFriendsList.lua:215
BuildProfile = defined @ProjectAzilroka/Modules/EnhancedFriendsList.lua:267
SecureHookScript = defined @ElvUI_Libraries/Core/Ace3/AceHook-3.0/AceHook-3.0.lua:409
name = "ProjectAzilroka_EnhancedFriendsList"
Initialize = defined @ProjectAzilroka/Modules/EnhancedFriendsList.lua:304
IsEnabled = defined @Atlas/Libs/AceAddon-3.0/AceAddon-3.0.lua:447
orderedModules =
}
ScheduleTimer = defined @Details/Libs/AceTimer-3.0/AceTimer-3.0.lua:94
DisableModule = defined @Atlas/Libs/AceAddon-3.0/AceAddon-3.0.lua:346
Authors = "Azilroka"
SetGradientColor = defined @ProjectAzilroka/Modules/EnhancedFriendsList.lua:75
Description = "Provides Friends List Customization"
UpdateFriends = defined @ProjectAzilroka/Modules/EnhancedFriendsList.lua:108
RegisterMessage = defined @DBM-Core/Libs/CallbackHandler-1.0/CallbackHandler-1.0.lua:80
UnregisterMessage = defined @DBM-Core/Libs/CallbackHandler-1.0/CallbackHandler-1.0.lua:143
UpdateSettings = defined @ProjectAzilroka/Modules/EnhancedFriendsList.lua:300
UnhookAll = defined @ElvUI_Libraries/Core/Ace3/AceHook-3.0/AceHook-3.0.lua:476
IsHooked = defined @ElvUI_Libraries/Core/Ace3/AceHook-3.0/AceHook-3.0.lua:492
defaultModuleState = true
CancelTimer = defined @Details/Libs/AceTimer-3.0/AceTimer-3.0.lua:147
IsModule = defined @Atlas/Libs/AceAddon-3.0/AceAddon-3.0.lua:213
db =
}
SetDefaultModuleState = defined @Atlas/Libs/AceAddon-3.0/AceAddon-3.0.lua:383
SendMessage = defined @DBM-Core/Libs/CallbackHandler-1.0/CallbackHandler-1.0.lua:49
Credits = "Marotheit Merathilis"
SetEnabledState = defined @Atlas/Libs/AceAddon-3.0/AceAddon-3.0.lua:420
Hook = defined @ElvUI_Libraries/Core/Ace3/AceHook-3.0/AceHook-3.0.lua:273
enabledState = true
Unhook = defined @ElvUI_Libraries/Core
IT seems that WoTLK client now follows functions form retail, so check there is no longer needed. Fix is actually quite easy:
Replace
function EFL:SetGradientColor(button, color1, color2)
if PA.Retail then
button.Left:SetGradient("Horizontal", color1, color2)
button.Right:SetGradient("Horizontal", color2, color1)
else
button.Left:SetGradientAlpha("Horizontal", color1.r, color1.g, color1.b, color1.a, color2.r, color2.g, color2.b, color2.a)
button.Right:SetGradientAlpha("Horizontal", color2.r, color2.g, color2.b, color2.a, color1.r, color1.g, color1.b, color1.a)
end
end
With:
function EFL:SetGradientColor(button, color1, color2)
button.Left:SetGradient("Horizontal", color1, color2)
button.Right:SetGradient("Horizontal", color2, color1)
end
the fix is quite easy.. its already done in alpha.
function EFL:SetGradientColor(button, color1, color2)
if PA.Retail or PA.Wrath then
button.Left:SetGradient("Horizontal", color1, color2)
button.Right:SetGradient("Horizontal", color2, color1)
else
button.Left:SetGradientAlpha("Horizontal", color1.r, color1.g, color1.b, color1.a, color2.r, color2.g, color2.b, color2.a)
button.Right:SetGradientAlpha("Horizontal", color2.r, color2.g, color2.b, color2.a, color1.r, color1.g, color1.b, color1.a)
end
end