I'm getting a really funky error with ncHoverBind when attempting to use it with a particular compilation (already notified the person who made it), and wondering if the compatibility issue is with ncHoverBind, or possibly theirs.
I'm well aware that 'this' was removed as a global variable a while back, and ncHoverBind doesn't even use 'this' to begin with.
Here's the error...
Code:
Message: Interface\AddOns\ncHoverBind\ncHoverBind.lua:247: Attempt to find 'this' in non-framescript object
Time: 11/11/12 23:01:33
Count: 4
Stack: [C]: in function `GetObjectType'
Interface\AddOns\ncHoverBind\ncHoverBind.lua:247: in function `register'
Interface\AddOns\ncHoverBind\ncHoverBind.lua:261: in function `?'
Interface\FrameXML\ChatFrame.lua:4358: in function `ChatEdit_ParseText'
Interface\FrameXML\ChatFrame.lua:4052: in function `ChatEdit_SendText'
Interface\FrameXML\ChatFrame.lua:4091: in function `ChatEdit_OnEnterPressed'
[string "*:OnEnterPressed"]:1: in function <[string "*:OnEnterPressed"]:1>
Locals: (*temporary) = <table> {
1 = <unnamed> {
}
2 = <unnamed> {
}
3 = <unnamed> {
}
4 = <unnamed> {
}
0 = <unnamed> {
}
}
Here's the code blocks containing lines 247 and 260.
(246-257)
Code:
local function register(val)
if val.IsProtected and val.GetObjectType and val.GetScript and val:GetObjectType()=="CheckButton" and val:IsProtected() then
local script = val:GetScript("OnClick")
if script==button then
val:HookScript("OnEnter", function(self) bind:Update(self) end)
elseif script==stance then
val:HookScript("OnEnter", function(self) bind:Update(self, "STANCE") end)
elseif script==pet then
val:HookScript("OnEnter", function(self) bind:Update(self, "PET") end)
end
end
end
(259-263)
Code:
local val = EnumerateFrames()
while val do
register(val)
val = EnumerateFrames(val)
end