Animation does not play completely

if(!animation.IsPlaying("Gun_Reload"))
animation.Play("Gun_Reload", PlayMode.StopAll);

It’s suppose to be 2 seconds long but it ends randomly between 0.2-0.4 seconds.

P.S. All other animation works fine and this code is under Input.GetButtonDown(“Fire1”).

Perhaps something else is also playing an animation on the same Animation component using PlayMode.StopAll.