Zimbabwe's spinning all-rounder Sikander Raza took six wickets in the day, finishing with figures of 7/113 – his country's second-best in Tests – to leave the hosts in charge in Harare.
They finished the third day 62/1 in their second innings, leading by 175 runs.
Sri Lanka resumed their innings in the morning well placed at 122/2 with Kusal Mendis and Angelo Mathews at the crease, but Raza soon snared his first of the day. Mendis, on 22, pulled a shorter ball from the off-spinner into Kevin Kasuza at short leg, the ball ricocheting off his helmet towards Carl Mumba at square leg. Kasuza was quickly taken from the field of play, and will not play any further part in the match after failing a concussion test with Timycen Maruma replacing him.
It's the same story as yesterday, rain bringing a slightly early end to proceedings.— ICC (@ICC) January 29, 2020
🇿🇼 lead by 175 runs with nine wickets still in hand.
🇱🇰 will be hoping for more sights like this tomorrow morning 👇 #ZIMvSL pic.twitter.com/M3NqjtcP3O
Dinesh Chandimal came and went, scoring just six before jabbing a back foot punch back to Raza who took a low catch. Mathews and Dhananjaya de Silva built a steady partnership, with Mathews continuing his form in the series by going past fifty. But just as it looked that de Silva would join him, Raza struck again. And once again it was the shorter ball doing the damage as it kept low underneath de Silva's attempted pull, the all-rounder departing for 42.
Niroshan Dickwella (1) and Suranga Lakmal (5) followed quickly, taking Raza's tally for the innings to six. And Carl Mumba then removed Mathews for 64, tickling one down the leg-side, to leave Sri Lanka 244/8 and still 162 runs in arrears.
But Lasith Embuldeniya and Lahiru Kumara provided resistance to go with Vishwa Fernando's defiance as the trio put on 49 runs in slightly over 22 overs for the final two wickets. Embuldeniya was brilliantly caught at mid-off for a 56-minute five to give Raza his seventh wicket and giving the off-spinner a chance to achieve Zimbabwe's best-ever Test figures. He had 7/105 at that point, with Paul Strang's 8/109 against New Zealand the mark to beat.
While he conceded too many runs in the end anyway, Raza was beaten to the final wicket by Victor Nyauchi. A fabulous delivery took the edge of Fernando's bat to dismiss him for 38, leaving Sri Lanka 293 all out and trailing by 113 runs on first innings.
Zimbabwe's openers were then tasked with batting through the final session of the day. But Craig Ervine, bumped up to open in Kasuza's absence, managed only 13 before edging behind off Fernando. Prince Masvaure and Regis Chakabva ensured there was no further loss until rain arrived, bringing the end of play with Zimbabwe 62/1.
Personalise your homepage with an ICC account
News, fixtures and updates tailored to your favourite team. Never miss a moment!