Jos Buttler was unable to celebrate his birthday with a century as England were all out for 332 in the fifth Specsavers Test at The Oval.
Buttler, 28 today, fell 11 short as he was well caught by Ajinkya Rahane at first slip off Ravindra Jadeja for 89, but the England batsman had done enough to lift his side into a strong position.
England had resumed on 198 for seven and teetered on 214 for eight after losing Adil Rashid before lunch, but Buttler and Stuart Broad frustrated the tourists.
Broad made 38 off 59 balls and shared in a 98-run ninth-wicket partnership with Buttler, who struck two sixes after lunch and appeared set for a ton.
It took a brilliant catch by KL Rahul to break the partnership soon after lunch, running back and diving under a skier when Broad mistimed an attempted big hit at Jadeja.
Buttler, joined by number 11 James Anderson, soon responded by hitting Jasprit Bumrah for two sixes in three balls – over long-on and hooked over fine-leg.
He had 89 when he made room to Jadeja (four for 79) but managed only to edge to slip to be last out in a total of 332.
Jasprit Bumrah took England’s first wicket of the day when he had Rashid lbw for 15, while last man Anderson did not score.