Bristol City moved four points clear of third-from-bottom Coventry after beating their relegation rivals.
The visitors went ahead through a Jon Stead own goal when he flicked Sammy Clingan's free-kick beyond City keeper Dean Gerken.
But Stead bundled in an equaliser and Yannick Bolaise turned and fired in to score City's second.
The home side had Brett Pitman sent off but still added a third, thanks to Chris Wood, in injury-time.
It was a crucial win for the Ashton Gate club as it helped them move one step closer to Championship safety, while Coventry's relegation fears will only be increased with four games left.
A defeat which also ended Coventry's seven-match unbeaten run had begun with Sky Blues keeper Joe Murphy quickly in action to keep out long-range strikes from Pitman and Stead.
He also did well to save a Ryan McGivern header before Neil Kilkenny's superb half-volley from almost 30 yards flashed just wide of the Coventry goal.
When a City player did score it was at the wrong end as Stead put through his own goal, but the home side kept up the pressure and were eventually rewarded early in the second half.
A Pitman corner was helped on by Cole Skuse and Stead applied the finishing touch.
The home side thought they had taken the lead with an Andre Amougou header only for the effort to be disallowed for a foul by Stead on keeper Murphy.
In what turned out to be an inspired substitution, Bolasie's introduction with eight minutes to play helped City take the lead when he steered in a shot from 12 yards.
Pitman's dismissal for a foul on Jordan Clarke set up a nervy finish for the home fans but their fears concerns were eased with Wood's injury-time goal.
Bristol City boss Derek McInnes: "We will need the same commitment, if not more, to get anything at Birmingham on Saturday and the same applies to our other remaining games.
"To beat Nottingham Forest and Coventry in the space of three days is a magnificent effort by the players and I couldn't have asked for more.
"But the job is not done yet. All we have done is given ourselves a decent chance of staying up."
Coventry manager Andy Thorn: "I was pleased to go in 1-0 up at half-time because we hadn't played well.
"I thought we looked very leggy in the second half. We have some injuries and some knocks and numbers told on us in the end. Bristol looked fresher than we did.
"But we have been on a good run prior to this game and we will pick the players up and go again.
"We have enough games left to get ourselves out of trouble and Bristol probably have a tougher run-in, so it isn't over yet."