The resurgent Dinesh Chandimal's unbeaten half-century frustrated Bangladesh in their 100th Test after Sri Lanka made a poor start in Colombo on Wednesday.
Needing a victory in their landmark Test to draw the two-match series, the Tigers took four wickets in the morning session at the P Sara Oval before Sri Lanka recovered to 238-7 when bad light stopped play late in the day.
Chandimal showed great resolve and was still there on 86 off 210 balls at the close, scoring just four boundaries as the Bangladesh bowlers applied the pressure after Rangana Herath won the toss and elected to bat first.
Mustafizur Rahman (2-32) and Mehedi Hasan (2-58) claimed two wickets apiece on a promising opening day for the tourists, but they were unable to dismiss Chandimal - back in form after losing his one-day international spot in South Africa last month.
131.5 - Dinesh Chandimal currently has a Test average of 131.5 across his 8 innings against Bangladesh. Enjoyment. pic.twitter.com/PmiZXvdCqk— OptaJim (@OptaJim) March 15, 2017
Mehedi took a fine catch at gully to send Dimuth Karunaratne (7) on his way after the opener was tempted to drive a Mustafizur delivery and the spinner struck a big blow when he had first-Test centurion Kusal Mendis stumped for only five.
Sri Lanka were 35-3 after teenager Mehedi got rid of Upul Tharanga (11) on a track that offered seam and turn and Subashis Roy (1-47) trapped Asela Gunaratne (13) leg before in a fruitful first session for the Tigers - who handed a debut to Mosaddek Hossain after Liton Das was ruled out.
Chandimal was successful with a review on 38 after he was given out when Shakib Al Hasan struck him on the pad and brought up his 12th Test half-century after lunch - having also made one in the second innings of the first Test.
The recalled Dhananjaya de Silva (34) offered support for the gritty Chandimal before Niroshan Dickwella also added 34 at almost a run a ball, but Sri Lanka were struggling on 195-7 when Mustafizur removed Dilruwan Perera (9).
There were no further inroads for the Tigers bowlers, though, as Dinesh and veteran stand-in captain Herath dug in on a testing track for the batsmen.