In my rune code I check that
start has been given a value (Blizzard does also in their UpdateRunes function which probably means GetRuneCooldown can return nil for start no matter what the online docs say) so a change to something like:
Lua Code:
local function CalcRuneCooldown(self)
local cooldown
local start, duration, runeReady = GetRuneCooldown(self)
if start then
local time = floor(GetTime() - start)
cooldown = ceil(duration - time)
end
if (runeReady or UnitIsDeadOrGhost("player")) then
return "#"
elseif (not UnitIsDeadOrGhost("player") and cooldown) then
return cooldown
end