View Single Post
09-30-16, 10:59 PM   #19
kingnothing7
A Deviate Faerie Dragon
Join Date: Aug 2016
Posts: 11
Another bug has cropped up (the addon is still functioning fine, though):

Code:
20x RegionInfo\code.lua:13: attempt to index local 'realmLang' (a nil value)
RegionInfo\code.lua:13: in function <RegionInfo\code.lua:8>
[C]: in function `LFGListSearchEntry_Update'
FrameXML\LFGList.lua:1622: in function `LFGListSearchPanel_UpdateResults'
FrameXML\LFGList.lua:1483: in function `onEvent'
FrameXML\LFGList.lua:191: in function <FrameXML\LFGList.lua:107>

Locals:
self = LFGListSearchPanelScrollFrameButton9 {
 0 = <userdata>
 Highlight = <unnamed> {
 }
 Spinner = <unnamed> {
 }
 DataDisplay = <unnamed> {
 }
 ActivityName = <unnamed> {
 }
 VoiceChat = <unnamed> {
 }
 ExpirationTime = <unnamed> {
 }
 PendingLabel = <unnamed> {
 }
 Selected = <unnamed> {
 }
 Name = <unnamed> {
 }
 resultID = 26913
 expiration = 655434.169
 ResultBG = <unnamed> {
 }
 ApplicationBG = <unnamed> {
 }
 CancelButton = <unnamed> {
 }
}
leaderName = "Pinkiiepye-AzjolNerub"
realmName = "AzjolNerub"
realmLang = nil
_ = nil
_ = nil
realmTimezone = nil
(*temporary) = "AzjolNerub"
(*temporary) = nil
(*temporary) = <function> defined @RegionInfo\LibRealmInfo.lua:21
(*temporary) = "No info found for realm"
(*temporary) = "AzjolNerub"
(*temporary) = "in region"
(*temporary) = "US"
(*temporary) = "attempt to index local 'realmLang' (a nil value)"
myLang = "US"
This is what the addon code currently looks like:

Code:
local f = CreateFrame("Frame")
f:RegisterEvent("PLAYER_LOGIN")
f:SetScript("OnEvent", function()
     
local myLang, _, _, myTimezone = select(5, LibStub("LibRealmInfo"):GetRealmInfo(GetRealmName()))
myLang = myTimezone == "AEST" and "AU" or myLang:sub(3)

hooksecurefunc("LFGListSearchEntry_Update", function(self)
	local leaderName = select(13, C_LFGList.GetSearchResultInfo(self.resultID))
	local realmName = leaderName and leaderName:match("%-(.+)")
	if realmName then
		local realmLang, _, _, realmTimezone = select(5, LibStub("LibRealmInfo"):GetRealmInfo(realmName))
		realmLang = realmTimezone == "AEST" and "AU" or realmLang:sub(3)
		if realmLang and realmLang ~= myLang then
			self.ActivityName:SetFormattedText("%s[%s]|r %s", ORANGE_FONT_COLOR_CODE, realmLang, self.ActivityName:GetText())
		end
	end
end)
	 
end)
  Reply With Quote