I think there is a fine line between accepting people FOR their faults and actually accepting the fault itself. I feel like Christianity has been through two opposite extremes in the last century.
Back in the days of my parents and grandparents, Christianity was much more strict, legalistic, and conservative. Most of the evangelical Christians from this generation are very condemning and judgmental. They bash sinners over the head (figuratively) and try to shove their beliefs down these sinners' throat. They think that since they've sinned so badly, they should all go to hell. One big issue with this is homosexuality. The older Christians think that a homosexual can't be a Christian and that they should go to hell. This just makes more bitterness and doesn't help anybody.
On the other side of the spectrum are the younger, more liberal Christians. Most of these people are in my generation. The media today is trying to tell us that all these sins like homosexuality are okay. Maybe this acceptance creates less hatred towards us Christians, but this is too far on the other side of the spectrum. Yes, we do need to accept sinners, but not the actual sin. That's what Jesus did. He hung out with prostitutes, tax collectors, and other sinners; but He by no means approved of their sin. He loved them, forgave them of their sin, and asked them to repent and turn away from their sin.
We need to accept people more like He did. Don't bash people and judge them, but don't just let them keep being sinful either. Accept them and love them, but also help them get back on track. If you just let a homosexual keep being gay, you're just contributing to the problem. For example, I have two very close bisexual friends. I love them just as much as my straight friends. But I try to help them by encouraging them to date guys instead of girls.