Second-half goals from substitutes Jamie Paterson and Lloyd Kelly lifted Bristol City into second place in the Sky Bet Championship with a 2-0 home win over Reading.
Paterson broke the deadlock after 68 minutes with a superb right-footed shot into the top corner from Bobby Reid's lay-off.
And youngster Kelly wrapped up the points with another fierce shot from inside the box moments after replacing Paterson in added time.
Reading were always in the game until that point. Just before Kelly's goal City keeper Frank Fielding made a brilliant save on his line to keep out Modou Barrow's close-range shot.
The visitors had the first clear chance of the game after 16 minutes when Jon Dadi Bodvarsson's pass found Barrow in space inside the box, but he dragged his low shot well wide.
The 23,000 crowd came to life when City's Reid was flagged offside when the ball was clearly headed towards him by a Reading player.
Having awarded a free-kick, referee Oliver Langford acknowledged the error and changed to a drop-ball, which saw the visitors return possession to home goalkeeper Fielding.
Reading's Sone Aluko picked up a needless caution on the half-hour mark for standing over and then blocking a free-kick deep in City's own half. Moments later Nathan Baker received City's first caution for a foul on Aluko.
The hosts broke dangerously from the resulting free-kick, with Korey Smith feeding Bailey Wright, whose low cross was cleared by the Reading defence.
Matt Taylor had a header cleared by centre-back Liam Moore and then nodded over from a clearer chance as City began to find their rhythm.
Their midfielder Marlon Pack was booked for blocking a Reading break on 38 minutes and must have been relieved a few minutes later when penalised for another foul, which referee Langford deemed worthy of no more than a final warning.
The half-time whistle was blown with neither goalkeeper having made a save of note, but it was a different story after the interval.
City suffered a blow early in the second period when centre-back Baker limped off. Hordur Magnusson switched to the middle from left-back, with Joe Bryan dropping from left midfield and substitute Paterson taking over in that position.
Reid looked to have a strong claim for a penalty when going over under a challenge from Joey van den Berg in the 52nd minute, but referee Langford was perfectly positioned and waved play on.
Aluko fired over and Barrow had a fierce low cross beaten away by Fielding as Reading improved as an attacking force.
Paterson's goal set them back again and boss Jaap Stam responded by introducing Garath McCleary and Yann Kermorgant for Leandro Bacuna and Bodvarsson.
Barrow had two late efforts at goal, but City finished strongly and Reading keeper Vito Mannone had kept Stam's men in it with two fine saves until Kelly's first goal in professional football.