locale filter function running multiple times

This is the expected behaviour. The locale filter is filtering the result of the get_locale() function. All this means is that get_locale() is being called at least 5 times.