Opener Kusal Perera fell for 99 but his free-flowing knock powered Sri Lanka to a comfortable eight-wicket win in a rain-hit second one-day international against West Indies on Wednesday as the hosts sealed the series with a match to spare.
Needing 225 in 38 overs under the Duckworth-Lewis system, Sri Lanka reached the target with nine deliveries to spare thanks to an unbeaten knock of 81 from Lahiru Thirimanne.
Sri Lanka lost Tillakaratne Dilshan (17) early but man-of-the-match Perera and Thirimanne ensured there were no hiccups with a second-wicket stand of 156.
Perera, who hit six fours and four sixes during his 92-ball innings, suffered severe cramps as he closed in on his third ODI hundred.
Visibly in pain while running between the wickets, he went for a hook shot off paceman Ravi Rampaul on 99 but much to the disappointment of the crowd at the R Premadasa Stadium, Carlos Brathwaite safely held on to the top edge at short fine leg.
Dinesh Chandimal and Thirimanne took Sri Lanka home with an unbroken partnership of 29 runs.
The West Indies bowling looked listless in the absence of captain Jason Holder, who was suspended due to slow over-rate, and injured all-rounder Andre Russell.
Earlier, a blistering 83 off 70 balls from opener Johnson Charles gave West Indies a strong start after the touring side won the toss and opted to bat.
Charles hit seven fours and four sixes to set up a strong platform for his team to build on but a rain delay of over three hours robbed them off their momentum.
Marlon Samuels, leading the side in the absence of Holder, made 63 before he was run out in the penultimate over after a misunderstanding with Kraigg Brathwaite left both batsmen stranded at the same end.
West Indies lost their remaining three wickets to run-outs in the final over to be all out for 214 with Lasith Malinga getting two of them through direct hits.
Malinga was also the pick of the Sri Lankan bowlers and picked up two wickets for 47 runs, troubling the batsmen with his variations during the closing overs.
The final match of the series is on Saturday in Pallekele.