England captain Joe Root threatened to make the West Indies pay dearly for giving him another reprieve in the second Test at Headingley after rival skipper Jason Holder starred with both bat and ball.
England were 3-171 in their second innings at stumps on Sunday's third day, a lead of two runs, after the tourists had posted an impressive first-innings total of 427.
Root, dropped on 10, was 45 not out, with Dawid Malan unbeaten on 21. Their unbroken stand was so far worth 77 runs.
Pace-bowling allrounder Holder, who had earlier made a valuable 43, captured the key wicket of Alastair Cook and then removed Tom Westley on his way to stumps figures of 2-44 in 17 overs.
"The position we're in is pretty decent," Holder told Sky Sports.
"The first hour tomorrow is crucial. We can't let Root get into his flow and we have to hold our chances."
Quick Single: Brathwaite rebounds from horror week
England, facing a first-innings deficit of 169 runs, saw Cook and Mark Stoneman, who along with fellow batters Westley and Malan are looking to cement his Test place ahead of the upcoming Ashes tour of Australia, start steadily.
Stoneman did, however, hit three fours off as many balls from Kemar Roach.
But the more defensive Cook fell for 23 to end a stand of 58 as Holder, maintaining a probing line, eventually found the left-hander's outside edge and had him caught behind.
Westley should have been run out for six after a mix-up with Stoneman. He failed to cash in though, falling for eight when caught behind driving loosely at Holder.
But Stoneman, hit on the left hand by Holder on 35, completed a maiden Test fifty in his third innings at this level.
The 30-year-old left-hander was bowled soon afterwards, however, for 52 by an excellent delivery Shannon Gabriel delivery that pitched in line and hit off stump, with England then 94 for three.
"Trying to bend my hand in the glove, I thought something's not right – I was worried and fearing the worst," said Stoneman.
"But the physio got it straight back in and I was good to go.
"There's something there for the bowlers and it was a case of grinding it out."
Quick Single: Westley's Ashes hopes fading fast: Vaughan
Malan had a lucky break on four when the West Indies opted against reviewing a rejected caught behind appeal off Gabriel, although technology indicated a thin edge.
While the West Indies' batting and bowling has improved markedly this match, their fielding remains fallible.
For the second time in the match they dropped Root early in his innings when he fended at the luckless Roach only for Kyle Hope to floor the gully chance.
Root, dropped on eight en route to 59 in England's first-innings 258, followed up Sunday with several fours.
But when he missed a legside clip off Holder on 35, he was given out lbw.
Root, however, reviewed immediately and was spared when replays indicated the ball was missing leg stump.
Holder was again unfortunate when his lbw appeal against left-hander Malan was rejected by umpire S Ravi, with a review showing it was 'umpire's call'.
West Indies' innings represented a remarkable turnaround given they had been dismissed for just 168 and 137 during an innings and 209-run defeat at Edgbaston last week in the first of this three-Test series.
They resumed on 329 for five, a lead of 71, only for James Anderson to then take two wickets in two balls as Shai Hope was caught behind for his overnight 147 to end a brilliant maiden Test century, with Shane Dowrich held by second slip Root.
Anderson led the attack with 5-76 in 29 overs and is now a mere three wickets away from becoming the first England bowler to take 500 in Tests.
But Holder survived Anderson's hat-trick ball and, in partnership with Jermaine Blackwood, who made 49, he frustrated England in an eighth-wicket stand of 75.