Sri Lanka will count on Angelo Mathews to steer them out of trouble after Zimbabwe off-spinner Sikandar Raza reduced the tourists to 226 for 5 at lunch on the third day of the second Test in Harare.
All-rounder Raza collected the three wickets to fall in an extended morning session, including that of a well-set Dhananjaya de Silva, for 42, in the over before lunch.
Mathews, who made his first Test double century in the series opener, reached the interval unbeaten on 53, with wicketkeeper Niroshan Dickwella new to the crease.
Sri Lanka resumed on 122 for two after bad light and rain brought a premature close to the second day, and still trail hosts Zimbabwe by 180 runs at lunch.
Raza made an early breakthrough to dismiss Kusal Mendis (22) but there was greater concern for Kevin Kasuza, who collapsed after he was struck on the helmet fielding at short leg for the second Test in a row.
The ball looped off Kasuza’s helmet after a firm pull from Mendis and was caught by Carl Mumba at square leg, although a stricken Kasuza had to be taken off the field on a stretcher.
Kasuza was then sent to hospital for scans. He suffered a delayed concussion in the first Test and was eventually substituted out of that match after a similar incident.
Raza snaffled a return catch offered by Dinesh Chandimal (six) to leave Sri Lanka on 142 for 4 before an 84-run stand between Mathews and De Silva steadied the reply.
But Raza bowled De Silva three balls before lunch with a delivery that stayed low to give Zimbabwe renewed impetus.
Sri Lanka lead the two-Test series 1-0 after winning the first match by 10 wickets.