Tillekaratne Dilshan, restored to Sri Lanka's Test team after an absence of nearly three years, was threatening to tear England to shreds. The wristy right-hander had already shared in a fourthwicket stand of 103 with Mahela Jayawardene which included a stream of dazzling strokes.
Jayawardene departed shortly before tea, top-edging a sweep against Giles to long leg where Kirtley, first running and then plunging forward, held a smashing, two-handed catch inches off the ground.
But England had still been plundered for 113 runs in 30 overs during the middle session - and Dilshan seemed intent on adding to the carnage after the break.
Instead, Flintoff bent his back, mopped bead after bead of sweat from his brow and produced an heroic spell of 5-0-10-1.
Those figures may not look that special. But, truly, the Lancastrian strained every sinew and his reward came once Dilshan could not avoid a bouncer that ballooned to slip off his glove.
When Thilan Samaraweera fell victim, five runs later, to the combination of Giles and Harper, Sri Lanka were in real bother.
Samaraweera lost some sympathy because he merely thrust his pad at the ball. But the delivery was not spinning in enough to threaten off stump and Harper should have rejected England's appeals. The official is by no means a favourite with Sri Lanka, having irked them in Galle and, by all accounts, during some previous series.
Today's decision against Samaraweera was not Harper's only controversial moment. Immediately before lunch he ruled that Sanath Jayasuriya had edged a catch down the leg-side when replays indicated the ball from Giles had touched only pad.
With Kirtley having won an early lbw decision against Marvan Atapattu and Kumar Sangakkara proving the loser after a running mix-up with Jayasuriya, England's strategy had not unravelled during the first session.
There were times this afternoon and again this evening, though, when having only Kirtley, Flintoff, Giles and, to a much lesser extent, the novice Gareth Batty to rely upon left England looking distinctly vulnerable.
The second new ball came to their aid just before the close with Kirtley rightly winning an lbw decision against Chaminda Vaas. The bowler's pleasure was understandable but his clenched fist salute close to the batsman's face could land him in bother with match referee Clive Lloyd.