I am kind and tolerant, and accept that people can be products of their culture and era. Sometimes, kind and wonderful people from a dominant class don't think their words or actions carry the meaning they do. But, I also expect people to be capable of rational thought and self-examination and to be better people than they were raised to be. So I give them once chance. Someone says something terrible or offensive, and I calmly try to explain why it is not ok. If they are unwilling to think about it, to reexamine their beliefs and their behaviors... done, we can't be friends. If they can recognize that their prejudices are not ok, and that they need to work to get beyond them, I can be tolerant of their learning process, even if it sometimes includes frustrating debates where they figure out what things they were taught as children were bullshit.
I don't have to, or even want to agree with my friends about everything, but there are some issues which are not up for debate. We can disagree about policy priorities, or the particulars of how to get things done, but we can't disagree on fundamental issues of human equality, no matter how much fun you are at a party.