TrinityCore/TrinityCore — pull request #8527 by Warpten (2012-12-01 13:12:40+00:00)
Title: Core/Spells: Multiple changes

Commit comments are pretty much self-explanatory actually...

About the "Your talents have been reset":
When you create a character and say, haven't picked a talent tree to fill, your talentTree field in database is "0 0". When you log in world, the core reads that field. It calls `sTalentTabStore.LookupEntry(0)` which obviously doesn't find anything. As such, the else condition is raised. If the core is reading the primary specialization, it'll error out that you have an invalid talent tab and try to wipe your talents. By adding `talentTree != 0`, we ensure the core ignores this talent tree.