I have a viewcontroller with a view that I am dismissing using a UIView animation to scale it down to 0 before removing it. My code for dismissing it is:
[UIView
If acceptable for you, set the scale values to 0.01 like so:
_menuContainerView.transform = CGAffineTransformMakeScale(0.01, 0.01);
Reference
So after speaking with a developer at Apple the reasoning I got back was that some base frameworks need to work with the inverses of transform matrices quite often, and since there is no inverse for the zero matrix the animation just returns out to avoid crashing. Hopefully this post has helped others who ran into a similar situation.