England needed Alastair Cook back urgently at Lord’s, after their top order hit trouble in his injury-enforced absence.
The hosts, bidding for a 3-0 Investec series whitewash of Sri Lanka, were relieved when x-rays proved their captain has no broken bones after taking a blow to his left knee fielding at silly mid-off.
But as they slid to 50 for three, after losing two second-innings wickets in two balls to Nuwan Pradeep (three for 25), they must have been tempted to persuade the opener back into the middle.
Cook must instead wait overnight to discover whether he is fit to bat again here - and at least on an eventful third day of this third Test, England recovered some composure in Alex Hales and Jonny Bairstow’s half-century stand before closing on 109 for four and a lead of 237.
As 13 wickets fell for 235 runs, the new tempo here was hard to credit after Lord’s had slumbered through the previous day to the extent that Sri Lanka resumed on 162 for one.
In under eight overs of a cloudy morning, it was 169 for four, and - after a counter-attacking seventh-wicket stand of 71 between Rangana Herath and Kusal Perera - the last three went for no runs to leave the tourists 288 all out at tea.
In an extended evening session - minus Cook, of course - England first lost Nick Compton, pushed up to open in what may prove his final Test innings.
Then Pradeep bowled Joe Root and James Vince, for a golden duck, to put himself on a hat-trick.
The home attack had drawn a near blank on day two - but on the resumption, Chris Woakes (three for 31) and Steven Finn (three for 59) each bagged two wickets.
Woakes and Stuart Broad eliminated Kusal Mendis and Kaushal Silva (79), without addition by either.
Woakes struck with his first ball, Mendis going lbw to one that moved down the slop in the air and off the pitch.
Then at the nursery end, Broad ensured Silva did not get started again either.
The opener had not scored from 13 deliveries when he got a thin edge, pushing forward in defence, to go caught-behind for the ninth time in his nine innings to date against England.
Woakes got one to bounce and hold its line against the camber to have Angelo Mathews very neatly caught by Root at second slip.
Then Finn got in on the act, trapping Dinesh Chandimal on the crease lbw, and having Lahiru Thirimanne pushing out on the front foot and edging to Root again.
Perera inflicted Cook’s knee injury with a fierce drive just before lunch - and England, led instead by Root, made little initial progress with the second new ball.
It was not until Broad had Herath chopping on from round the wicket that one end was open again.
After Perera escaped a half-chance to Root from a glove high to second slip, James Anderson got him two balls later eight short of a third Test 50 - caught-behind from up the wicket trying to mow runs to leg.
Slip catches accounted for the last two wickets, Anderson quickly doubling up and Woakes striking with his first ball of a spell again.
The second-innings stakes were high for Compton.
He hinted at a much-needed return to form, but Shaminda Eranga had him caught-behind pushing forward.
Root appeared unlucky, undone by low bounce from well short of a length, and Vince - in only his second first-class match at this venue - mis-calculated the slope and lost his off-bail playing no shot.
Hales had survived a tough chance to second slip on 19, and was reprieved again on 39 just before close when Chandimal dropped a chance down the leg-side off Pradeep.
By then, though, Bairstow had succumbed - playing across one as Pradeep bowled a third Englishman.