Files 4
Downloads 154,171
Favorites 409
View Bug Report
Getting "shine" error on runewatch
Bug #: 4718
File: RuneWatch
Date: 09-09-08 09:52 AM
By: d_malnati
Status: Fixed
I installed RuneWatch-v1.1.0-beta and as soon as I did I started getting the following error in my error mod (TekErr is what I use to capture errors):

Interface\FrameXML\RuneFrame.lua:86: attempt to index field 'shine' (a nil value)
[C]: ?
Interface\FrameXML\RuneFrame.lua:86: in function `RuneButton_Update'
Interface\FrameXML\RuneFrame.lua:140: in function <Interface\FrameXML\RuneFrame.lua:120>

This error shows up every few second. I currently have gone back to 1.0.2 stable for the time being.

RSS 2.0 Feed for Bug CommentsNotes Sort Options
By: Voorije - 09-09-08 06:21 PM
I am unsure why this is occuring. What you're seeing is a LUA Error within the Blizzard Rune Frame, this is in regards to the little flash you see when a cooldown spinner is complete.

I in no way touch the Blizzard RuneFrame except to hide it. When you hide a frame in WoW it continues to act the same way it does normally it's just not rendered at the final pass.

I will still look into it for you, but I'm unsure of how RuneWatch could be causing this.
By: Voorije - 09-09-08 07:35 PM
Thankyou d_malnati for submitting your bug report. After investigating the problem, I (along with others) were able to identify this bug as part of XPerl, Not RuneWatch.

XPerl seems to "steal" components of the RuneFrame (not part of RuneWatch) from blizzard to use as it's own cooldown tracking system.

There was a bug in thier code (typo) which caused this "shine" texture to be de-reference and thus found as nil.

As to why my mod exposed this bug, I am unsure, but I can assure you there is only one line of code in my mod that interacts with the blizzard rune-frame. This is a simple visiblity switch.

The fact that XPerl is piggy-backing the rune frame is indicative of sloppy coding, he should have written his own.

I've identified a temporary fix for XPerl to remove the shine bug, and have informed the addon author through his bug-tracking system, under the ticket I have opened:

http://wow.curseforge.com/projects/x-perl-unit-frames/tickets/27-rune-frame-shine-error/

For you and all others encountering this problem, I personally suggest using a less-bloated and ultimately better Unit Frame mod:

ag_UnitFrames

*** THIS TICKET IS NOW CLOSED: Not A Bug ***
By: Iosif - 09-10-08 02:52 AM
I have also gone back to the 1.0.2 Stable, It works with XPerl. Your last version worked fine, this one doesn't. Fact of the matter is XPerl has a HUGE following one of the most popular UI Mods out there. (Per Download Statistics)

Your Mod currently is the best Rune Cool down counter, but if people have to pick "Runewach or XPerl" your going to lose that push almost every time. In fact you already are people are going back to the Stable version. It will not belong before ArcHUD, MetaHUD and even XPerl have their own Rune cool down mods.

This unfortunately this leaves you with 2 options.
1: Contact Xperl Devs and get them to fix their code.
2: Edit your code to play nice with XPerl.
By: Voorije - 09-10-08 03:39 AM
If you want to use both, it's a simple fix.

xperl_player.xml

Line 49:
<Texture name="$parentShine" file="Interface\ComboFrame\ComboPoint" alphaMode="ADD" hidden="true">

change it to

<Texture name="$parentShineTexture" file="Interface\ComboFrame\ComboPoint" alphaMode="ADD" hidden="true">

Frankly, I don't know what you want me to do? I don't touch the RuneFrame, and I have no way of figuring out why 1.0.2 Stable works fine with XPerl and not 1.1.x Beta

Im going to continue to look for a solution, but frankly XPerl's rune-integration is sloppy at best. I suggest using better less bloated unit frames.
By: Voorije - 09-10-08 04:20 AM
I was able to make my mod trick XPerl into NOT running the code that was causing the 'shine' error.

v1.1.2 Beta Should no longer have conflicts with XPerl (Will be uploaded within 20 minutes).
By: Voorije - 09-10-08 04:27 AM
Note: This of course does not affect the operation of X-Perl, it just basically makes the error go away.