An important thing to pay attention to as well is whether a guy is able to take responsibility for any of the bad things that have happened to him in the past. Being able to accept responsibility is a sign of maturity, putting the blame on someone else all the time is child’s play.
Here’s the thing: everyone has issues. But there are some issues with which can be dealt, and some which are better left far away from you and your life.
It’s ok to try to make things work- but it’s not ok to try to make things work over and over and over again- because some things are just never going to change.
Don’t go for the one you have to change; go for the guy you like just as he is.