dslreports logo
site
 
    All Forums Hot Topics Gallery
spc

spacer




how-to block ads


Search Topic:
uniqs
17
share rss forum feed


Immer
Gentleman
Premium
join:2010-01-07
Evans, GA
kudos:8
Reviews:
·Comcast
reply to Nick D

Re: Addons Help

Addon Control Panel
Bagnon
Omen
Clique
Bartender
Skada.

I've been getting warnings from the client that an addon was being blocked for attempting to call a Blizzard-only argument. So far, it has asked me to shut down Bagnon most of the time, but Skada a few times whenever I change talents around. Is anyone else getting these errors? So, thanks to Addon Control Panel, I let it shut down whatever addon it doesn't like, I move my talents around, and then I re-enable the addon. I hope the problem goes away soon, though. I plan on swapping talents around as often as Sanctisimo changes his tmog.
--
Immergruen (resto/boomie) on Nathrezim Server (US)
Malanorei (discipline/holy); Esclavizado (blood/unholy)
Guild leader for Pride and Ego

Intelligence is no substitute for Character.

cymraeg
Thread Killer
Premium
join:2011-06-07
Dodge, NE
my messages come from SUF or quartz procs nothing from bagnon or skada


Immer
Gentleman
Premium
join:2010-01-07
Evans, GA
kudos:8
Reviews:
·Comcast
Quartz... I use that... and it hasn't really been updated in a looooooong time. Anyone know of an actively maintained spell cast bar?

I also really like TipTac. I hate where the Mouseover information window pops up... so TipTac allows me to move it and have all mouseover information show up in the same place of my choosing.

cymraeg
Thread Killer
Premium
join:2011-06-07
Dodge, NE
quartz is up to date its the procs module i get the errors with mostly with the monk of course


Nick D
Premium
join:2010-02-04
Orange, CA
reply to Immer
Other people use Gnosis. I still use basic Quartz for most things.


Nick D
Premium
join:2010-02-04
Orange, CA
reply to Immer
said by Immer:

I've been getting warnings from the client that an addon was being blocked for attempting to call a Blizzard-only argument. So far, it has asked me to shut down Bagnon most of the time, but Skada a few times whenever I change talents around. Is anyone else getting these errors?

THIS IS A GOOD TIME FOR ME TO LAUGH AT BLIZZARD FOR TECHNICAL REASONS.

So, here's the skinny on these bugs.

In LUA, functions can return multiple values. Sometimes you don't care about one of those values, so you end up using a throwaway to make sure you get the right index. _ (a valid variable in LUA) is commonly used.

So something like:
_, name = GetUnitInfo()

You'd then use the name variable later, and you'd ignore the _, because really, who names variables _?

Furthermore, variables in LUA are global unless declared local. Most people don't put a "local _" declaration anywhere, because who the hell is using _ as an important variable? (see below for answer!)

NOW

In WoW, there's a concept called "taint". I'm not too sure of the specifics, but basically secure functions can only use untainted variables. This is how they prevetn addons from doing certain things like auto-cast and whatnot. So addons taint variables all the time. Like the _ variable, which no one in their right mind should use for real data.

EXCEPT

The Blizzard Glyph and Talent UIs do.

So some addon taints _, and then blizzard tries to pass it into a secure function.

True, the addon devs could hide that with a local and not pollute the global namespace, but its SO COMMON that I would hope Blizzard would just name their variable something USEFUL instead of just passing it around.

The practical consequence of this is you can fix your addons by adding "local _" to the top of the first LUA file loaded, but that's annoying and would be very error prone. Some addons are already updated to do this.

The other thing you can usually do is just reload and do the glyph/talent swap immediately, with no disabling. The line of code that taints the global _ probably doesn't run right after reload.


Immer
Gentleman
Premium
join:2010-01-07
Evans, GA
kudos:8
awesome... tyvm. I know a few months back I talked about wanting to get into Lua programming. I picked up JAVA instead (oddly enough the university doesn't offer a LUA programming class, lol).


Nick D
Premium
join:2010-02-04
Orange, CA
Just keep in mind:

Syntax is easy.
Design is hard.