Sri Lanka claimed opener Shaun Marsh after Australia made a brisk start to their mammoth 324-run chase on a tense final day of the third Test on Wednesday.
Sri Lankan off-spinner Dilruwan Perera struck just before lunch to send Marsh, who scored a century in the first innings in Colombo, back to the pavilion on 23.
The world number one side, gunning for a consolation win after losing the first two matches, were 77 for one at lunch, needing another 247 runs for victory.
Warner, who got Australia away to a swift start with three fours and a six, had reached 44 off 64 balls by the interval.
Earlier Sri Lanka, who resumed on 312 for eight, declared their second innings on 347 for eight with overnight batsman Dhananjaya de Silva unbeaten on 65.
Playing in just his third Test, de Silva smashed 10 boundaries during his 74-ball knock, after scoring a century in the first innings.
Sri Lanka skipper Angelo Mathews declared the second innings inside the first hour of play, following what appeared to be delaying tactics from the visiting side.
Australian pace spearhead Mitchell Starc changed his bowling boots in between overs and several lengthy team discussions were held on the pitch, prompting Mathews to call his batsmen back in the pavilion.
Kaushal Silva’s gritty 115 on Tuesday helped Sri Lanka hold the upper hand in their bid to register their first series whitewash against Australia.