From ef18b488da971f7e188ca174c11e910999a3bb1e Mon Sep 17 00:00:00 2001 From: Parnic Date: Wed, 20 Oct 2010 04:30:48 +0000 Subject: [PATCH] - minor garbage generation fix (thanks Torhal!) --- IceHUD.lua | 33 ++++++++++++++++++--------------- 1 file changed, 18 insertions(+), 15 deletions(-) diff --git a/IceHUD.lua b/IceHUD.lua index 0957076..9692219 100644 --- a/IceHUD.lua +++ b/IceHUD.lua @@ -1141,27 +1141,30 @@ function IceHUD:GetAuraCount(auraType, unit, ability, onlyMine, matchByName) return 0 end -function IceHUD:HasBuffs(unit, spellIDs) +do local retval = {} - for i=1, #spellIDs do - retval[i] = false - end - local i = 1 - local name, _, texture, applications, _, _, _, _, _, _, auraID = UnitAura(unit, i) - while name do + function IceHUD:HasBuffs(unit, spellIDs) for i=1, #spellIDs do - if spellIDs[i] == auraID then - retval[i] = applications == 0 and true or applications - break - end + retval[i] = false end - i = i + 1 - name, _, texture, applications, _, _, _, _, _, _, auraID = UnitAura(unit, i) - end + local i = 1 + local name, _, texture, applications, _, _, _, _, _, _, auraID = UnitAura(unit, i) + while name do + for i=1, #spellIDs do + if spellIDs[i] == auraID then + retval[i] = applications == 0 and true or applications + break + end + end - return retval + i = i + 1 + name, _, texture, applications, _, _, _, _, _, _, auraID = UnitAura(unit, i) + end + + return retval + end end function IceHUD:OnDisable()