At the start of the second day, South Africa looked set to bat just once in the second Test. The bowlers had shot down Sri Lanka for 157 and they were trailing by just nine before the start of play. By the time the stumps were drawn, Sri Lanka had put themselves in a position to sow some doubts in the minds of the South African batsmen.
On a pitch where the odd ball kicks off, Sri Lanka ended the second day on 150 for 4 - leading by 5 - and will hope Dimuth Karunaratne will be able to build on his unbeaten 91. They'll also hope for Niroshan Dickwella's promise to shine through and give the bowlers a fighting target.
While it is Karunaratne's innings that has put Sri Lanka in an even position with the hosts, the real star of the day of Vishwa Fernando, who bagged his maiden five-wicket haul to restrict South Africa's lead to 145 as the hosts folded for 302.
In the opening hour, the Sri Lankan pacers looked lost and out of ideas. Dean Elgar, who started the day unbeaten on 92, eased to his 13th Test in the fifth over off 133 deliveries. Rassie van der Dussen, who had taken 26 deliveries to get off the mark on day one, eased to his half-century in the next over. As both South African batsmen cashed in, Sri Lankan fielders let the bowlers down. Misfields were followed by Kusal Mendis dropping van der Dussen at second slip.
Elgar and Van der Dussen stretched their association to 184 before Dushmantha Chameera struck. Elgar hung his bat out to a length delivery and was caught at slips. That was the opening Sri Lanka needed as the hosts went from 218 for 1 to 218 for 3 with Van der Dussen following his partner. South Africa ended the session on 241 for 5 with Dasun Shanaka bagging two and helping the team find their lost mojo.
After the break, Vishwa dismissed Wiaan Mulder on the second ball of the session to give the visitors another promising start. Elgar's wicket had led to a meltdown as South Africa lost their last nine wickets for just 84 runs. Lungi Ngidi and Lutho Sipamla frustrated Sri Lanka for 31 deliveries before Vishwa dismissed the latter to complete his five-wicket haul.
Even with a sizeable lead, South Africa would have felt comfortable in tightening the noose. Ngidi landed the first blow when he knocked over Kusal Perera in the third over. Lahiru Thirimanne and Karunaratne saw things through to the Tea break and returned to slowly build Sri Lanka's chances. They made 85 for the second wicket and also managed to frustrate the likes of Ngidi and Mulder.
While Thirimanne lived on the edge a bit, Karunaratne looked solid to hold one end up. It was Ngidi who provided the second break when he strangled Thirimanne down the leg side. He then dismissed Kusal Mendis on his next delivery - again a strangle down the leg side - to give South Africa some hope of hurting Sri Lanka. Debutant Minod Bhanuka looked troubled against the short ball and succumbed to one from Anrich Nortje as Sri Lanka nosedived from 86 for 1 to 109 for 4..
Dickwella and Karunaratne forged an unbeaten stand worth 41 off 69 to take the side into the lead but will be well aware that one misstep from them is enough for the hosts to pin them to the mat again.
Brief scores: Sri Lanka 157 (Kusal Perera 60; Anrich Nortje 6-56) & 150/4 (Dimuth Karunaratne 91*; Lungi Ngidi 3-26) lead South Africa 302 (Dean Elgar 127; Vishwa Fernando 5-101) by 5 runs.