Glenn Murray helped himself to yet another goal to keep Crystal Palace's promotion bid on track.
- Related Content
The country's leading marksman took his tally for the season to 28 with a superb first-half opener.
Stephen Dobbie struck after the break to seal Palace's third win in four outings and dump sorry Bristol City on to the foot of the table despite a late own goal by Jonathan Parr.
Murray gave Palace a deserved lead after 34 minutes, and the only surprise was that it took them so long.
They did everything but score in the opening half an hour, including having a goal ruled out and hitting the bar.
Murray hit an early shot straight at Tom Heaton and Wilfried Zaha blazed over from a tight angle after being teed up by Jonny Williams.
Then Murray's slide-rule pass played in Jazz Richards but the overlapping full-back was adjudged to be offside as he tucked the ball past Heaton.
Moments later Yannick Bolasie came up with a stunning overhead kick inside the area but his effort cannoned back off the woodwork with Heaton beaten.
Zaha had a shot deflected wide and Peter Ramage headed Parr's cross over before the goal Palace had been threatening finally arrived.
Skipper Mile Jedinak took a quick free-kick over the top to Murray, who expertly volleyed home on the run from a tight angle.
Murray could have bagged a second before half-time but he could not control a cross from Richards in front of goal.
Palace could have been made to rue that miss as City made a brighter start to the second half with Jon Stead firing over and Julian Speroni clinging on to Richard Foster's shot.
But they extended their lead in the minute when Dobbie notched his first goal for Palace just four minutes after coming on as a substitute.
The on-loan Brighton striker was felled outside the area and picked himself up to curl a fine 64th-minute free-kick past Heaton.
The City keeper went on to deny Kevin Phillips and Jacob Butterfield, while to the visitors' credit they did not throw in the towel and Speroni had to be alert to keep out Stead's diving header from Foster's cross.
But it was a Palace player who grabbed the final goal, although it went to City as Parr made a mess of a cross into the box and headed it past his own keeper in stoppage time.