Will shorting pins destroy an Arduino?

Yesterday, I accidentally connected a component with wrong polarity. What happened is that my sketch didn't run. I checked with a multimeter and found out that the current initially is very high, then drops quickly to zero.

The Arduino Micro (Leonardo compatible) did not seem to get damaged. After fixing the polarity issue, sketches run fine again.

Is that normal behavior of an Arduino Micro? Does it have some kind of over current protection built in? Or is this most likely due to the component?

I am asking because currently I protect the IO pins of the Arduino with 470 Ohm resistors, and I wonder if that is really necessary.

If running off USB power there is a self-resetting fuse that will turn off power if more than 500 mA is drawn. The USB port also should have over-current protection.

If running off Vin or the power jack it will be the 5V regulator that overheats and shuts down.

The ATmega chip is quite robust but protection resistors couldn't hurt.