Sri Lanka captain Sanath Jayasuriya breathed a sigh of relief after his side edged past the West Indies to boost their chances of making the Super Sixes.
The Sri Lankans bounced back from their embarrassing defeat by Kenya to record a nail-biting six-run victory in Cape Town.
It leaves them top of Group B with just one match remaining.
"After losing to Kenya, we talked to the boys and decided to have a go," said Jayasuriya, who top-scored for Sri Lanka with 66.
"There was a lot of pressure in this game, it was really hard for me. But we bowled really well under pressure and pulled it off.
"That defeat to Kenya was very disappointing.
Today was my day - I put the ball in the right spot
"But a similar thing happened in Australia. We were bowled out for 65 against Australia A and then got 340 against Australia and won."
Fast bowler Pulasthi Gunaratne bowled a tight final over to make sure the Windies fell just short of their 228-run target.
But Chaminda Vaas was named man of the match after taking four key wickets.
Vaas finished with figures of four for 22 from his 10 overs to take his tally for the tournament to 14 wickets.
"I've been working with the bowling coach at home and have got my swing back," he said.
"Today was my day. I put the ball in the right spot."