One of my friends (who is black) was attending a party and minding his own business, when a guy he had dealt with in the past walked up to him and began antagonizing him with racially charged slurs. My friend says he just didn't respond to the guy in the past, because he didn't want to be considered a stereotype, but the attacks kept getting worse.

At the party, my friend lost his frame and decided he had enough and punched the guy. He says he thinks the guy is probably still racist, but at least he doesn't pull that anymore, he established at least some form of dominance.

Was fighting the right call? What could he have done better? When is fighting ever justified in the name of respect?