Jake Forster-Caskey's goal gave Charlton Athletic a 1-0 win at Sky Bet League One promotion rivals Bradford in a match spoiled by high wind and rain.
The goal came following a hotly disputed throw in on the right after 74 minutes. Chris Solly crossed the ball to the far post where Tariqe Fosu headed back across goal for Forster-Caskey to sweep into the net.
Charlton's win enabled them to draw level with Bradford in third place on 27 points. It was City's third home defeat in the league.
In a match dominated by defences, Charlton were indebted to keeper Ben Amos, who made three important saves to help his side to take all three points.
He kept out a close-range header from Bradford striker Charlie Wyke in the 27th minute following a free-kick from Alex Gillead and then turned away a goalbound effort from Omari Patrick.
Amos also denied Matt Kilgallon, keeping out the defender's close-range header five minutes from the end as Bradford pressed hard for an equaliser.
The Bantams' keeper Colin Doyle also made fine saves to deny Ricky Holmes and Forter-Caskey.