‘have a soft spot for someone’
‘I have a soft spot for him’ is short for ‘I have a soft spot in my heart’ for him. It means ‘I really like him’. This expression is basically positive, but it does include a small nuance of weakness – a soft spot also means a weak place. So ‘I have a soft spot for him’ means ‘I really like him, so I might be weak or make wrong decisions about him’.
A: Oh my God! John forgot to go to his mother’s 50th birthday party! His father worked so hard on that party. His father will be so angry!
A: But he’s a really angry guy. *I’m* scared of John’s father!
B: Yes, but he’s got a real soft spot for John. He might get angry at his other children, but he never gets angry at John.
Who do you have a soft spot for?