This type of thing is becoming common for certain jobs and roles. Anyone who may represent a brand or company to the general public (CEO, athletes, media personalities, etc) will now have clauses written into their contract that they can be fired over this type thing and I don't think it is directly for political correctness reasons, it is for profit. It is to protect the brand.
With the new age of social media and mass movements, large amounts of people can quickly boycott brands and companies when a personality does or says something that would alienate a large amount of people. Companies want quick outs when bad press starts to circulate.
Does that make it fair that an employee of 20 years is let go for something he says? Probably not, but this stuff is strictly profit motivated.
When you are in those roles, you sign a bunch of things saying you won't do "things" that will hurt the brand, and those people have to realize that they can't go and say just anything publicly without a potential impact to their career. They have to be hyper sensitive to what they say and post. And if you aren't okay with that, they need to find another career.