New skipper Hashim Amla is once again proving to be a thorn in Sri Lanka's side as the home side's spin attack continues to press for a series-levelling victory on the final day of the second test against South Africa on Monday.
Amla, who top scored for his team in the first innings with 139 not out, was unbeaten on 24 from 146 balls as South Africa went to tea on 104 for four wickets, clinging on to their last six wickets rather than chasing the 369 runs needed for victory.
Faf du Plessis (six) was the other not out batsman at the interval after surviving a first-ball dismissal when he successfully reviewed an lbw decision given against him off left-arm spinner Rangana Herath.
Sri Lanka also missed a golden opportunity to dismiss Amla on 13 when opposing skipper Angelo Mathews dropped him at second slip as he prodded at a Herath delivery.
Bowling brilliantly all day, Herath took the two South African wickets to fall in the afternoon session, dismissing Quinton de Kock for 37 and AB de Villiers for 12.
De Kock's defiant 92-ball stay ended when a ball into the rough jagged onto his glove and popped up to Kithuruwan Vithanage at forward short leg.
Just as South Africa looked to have denied Sri Lanka any further wickets in the afternoon session, Herath produced an unplayable delivery to have De Villiers bowled playing down the wrong line.
Earlier, Sri Lanka's hopes of securing victory were thwarted by two rain delays in the morning session that restricted play to just 30 minutes prior to the first interval.
In between the showers, South Africa lost the wicket of Dean Elgar to reach 55-2 before umpires took the players off for an early lunch.
Sri Lanka captured Elgar's wicket from the second ball after the first break for rain when a Dilruwan Perera delivery beat the opening batsman's forward prod to hit off stump.
Elgar lasted 65 balls and shared a partnership of 43 with De Kock before the second, heavier shower forced the players off the field again.
South Africa lead the two-match series 1-0 and if they avoid defeat in Colombo, will reclaim the world number one test ranking.