Joe Leach scored his maiden first-class century to help Worcestershire hold up Gloucestershire in their LV= County Championship Division Two match at Cheltenham.
Leach, who top-scored with an unbeaten 82 in the first innings, made 103 not out as Worcestershire reached 296-8 at stumps on the third day to hold an overall lead of 152.
Thilan Samaraweera also scored 63 and his fifth-wicket stand of 109 with Leach did much to keep the visitors in contention, although Gloucestershire remain favourites to register their third win of the season.
Will Gidman was the most successful of the Gloucestershire attack with 3-72, while on-loan left-arm spinner Tom Smith took 2-85.
Worcestershire began the day on 31 for no wicket and an attritional morning session brought just 53 runs from 29 overs.
Gloucestershire had to wait until the final half hour of the session to celebrate a wicket, and it came when Daryl Mitchell pushed forward to Smith and edged to Michael Klinger at slip before he struck again four overs later when Moeen Ali gave a bat-pad catch to Hamish Marshall at short leg.
Matt Pardoe's obdurate innings of 39, from 168 balls, ended in the fifth over after lunch when he was caught behind by Gareth Roderick off Will Gidman and it became 102-4 when Alexei Kervezee was run out at the striker's end by James Fuller's throw from mid-off after being sent back by Samaraweera.
Gloucestershire had to wait 27 overs for another wicket as Samaraweera and Leach put on 109 in largely untroubled fashion.
Leach reached a fluent 53-ball half-century with a cover-driven boundary off spin bowler Miles Hammond, and Samaraweera reached his 121-ball fifty in the next over with a single off Smith.
Gloucestershire took the second new ball immediately after tea and it was only four overs old when Will Gidman won a lbw verdict against Samaraweera, whose 134-ball innings had contained nine fours.
Ben Cox departed soon after, caught down the legside by wicketkeeper Roderick off Craig Miles to depart for six, and Gareth Andrew went for 14 when he edged a drive off Will Gidman into the hands of Alex Gidman at first slip.
Leach continued to bat impressively and he surpassed his previous best score - the 82 he made in the first innings - with a straight-driven boundary off Will Gidman. Shaaiq Choudhry helped Leach add 28 for the eighth wicket before he was bowled by Fuller for 10.
Leach survived a head-high caught and bowled chance to Benny Howell on 91 and went on to reach his century with a cover-driven boundary off Smith from the second ball of the last over.