Index: trunk/src/game/SpellEffects.cpp
===================================================================
--- trunk/src/game/SpellEffects.cpp (revision 79)
+++ trunk/src/game/SpellEffects.cpp (revision 93)
@@ -1774,6 +1774,6 @@
                 if( // ignore positive and passive auras
                     !iter->second->IsPositive() && !iter->second->IsPassive()    &&
-                    // ignore physical auras
-                    (GetSpellSchoolMask(iter->second->GetSpellProto()) & SPELL_SCHOOL_MASK_NORMAL)==0 &&
+                    // only affect magic spells
+                    iter->second->GetSpellProto()->DmgClass == SPELL_DAMAGE_CLASS_MAGIC &&
                     // ignore immunity persistent spells
                     !( iter->second->GetSpellProto()->AttributesEx & 0x10000 ) )
Index: trunk/src/game/Unit.cpp
===================================================================
--- trunk/src/game/Unit.cpp (revision 81)
+++ trunk/src/game/Unit.cpp (revision 93)
@@ -2906,4 +2906,5 @@
             return SPELL_MISS_NONE;
         case SPELL_DAMAGE_CLASS_NONE:
+            return SPELL_MISS_NONE;
         case SPELL_DAMAGE_CLASS_MAGIC:
             return MagicSpellHitResult(pVictim, spell);
