Fix spellstealing durations when duration of stolen buff is infinite.

Based on patch by Toni.Shocker.
Fixes issue #3550
Fixes issue #3017

--HG--
branch : trunk
This commit is contained in:
silinoron
2010-08-23 15:10:27 -07:00
parent 1691065162
commit c09528a6bf

View File

@@ -4253,7 +4253,7 @@ void Unit::RemoveAurasDueToSpellBySteal(uint32 spellId, uint64 casterGUID, Unit
}
else
{
int32 dur = 2*MINUTE*IN_MILLISECONDS < aura->GetDuration() ? 2*MINUTE*IN_MILLISECONDS : aura->GetDuration();
int32 dur = (2*MINUTE*IN_MILLISECONDS < aura->GetDuration() || aura->GetDuration() < 0) ? 2*MINUTE*IN_MILLISECONDS : aura->GetDuration();
newAura = Aura::TryCreate(aura->GetSpellProto(), effMask, stealer, NULL, &baseDamage[0], NULL, aura->GetCasterGUID());
if (!newAura)