Match ends, Bristol City 1, Oldham Athletic 1.
Oldham's James Dayton struck a late equaliser to deny struggling Bristol City a first home win of the season.
Jay Emmanuel-Thomas's acrobatic volley from strike partner Ryan Taylor's well-placed cross had given the Robins a first-half advantage.
Dayton and Adam Rooney both had shots well blocked as Lee Johnson's Oldham looked the brighter team.
And Dayton finally got his goal with 13 minutes left when his left-foot shot beat goalkeeper Elliot Parish.
The result means City climb a place to 23rd in the League One table, while Oldham are 16th.
VIEW FROM THE DRESSING ROOM
Bristol City head coach Sean O'Driscoll told BBC Radio Bristol:
"We have had a lot of time where we have walked in saying we didn't deserve that.
"People say to me you could do with a 1-0 scrappy win and you reply understanding the sentiment but I know what a scrappy win looks like and it's not pretty.
"I think it's about creating openings. I don't think we created enough.
"I'm not sure whether that's down to conditions but we were not fluid enough with our play."
- 22ShoreyBooked at 21mins
- 25ElliottSubstituted forBaldockat 83'minutes
- 18TaylorSubstituted forGillettat 75'minutes
- 14ReidSubstituted forBryanat 62'minutes
- 6TarkowskiBooked at 66mins
- 4WesolowskiSubstituted forRodgersat 88'minutesBooked at 90mins
- 9RooneySubstituted forMontañoat 70'minutes
- 14Clarke-HarrisBooked at 56mins
- 19DaytonSubstituted forSchmeltzat 83'minutes
- Andy Madley
- Shots on Target
Second Half ends, Bristol City 1, Oldham Athletic 1.
Attempt missed. Johnson Clarke-Harris (Oldham Athletic) left footed shot from outside the box is close, but misses to the left.
Korey Smith (Oldham Athletic) wins a free kick on the left wing.
Foul by Joe Bryan (Bristol City).
Hand ball by Danny Philliskirk (Oldham Athletic).
Anton Rodgers (Oldham Athletic) wins a free kick in the attacking half.
Foul by Sam Baldock (Bristol City).
Foul by Danny Philliskirk (Oldham Athletic).
Aden Flint (Bristol City) wins a free kick in the attacking half.
Johnson Clarke-Harris (Oldham Athletic) wins a free kick in the defensive half.
Foul by Aden Flint (Bristol City).
Substitution, Oldham Athletic. Anton Rodgers replaces James Wesolowski.
Foul by Marlon Pack (Bristol City).
James Wesolowski (Oldham Athletic) wins a free kick in the defensive half.
Attempt blocked. Danny Philliskirk (Oldham Athletic) right footed shot from outside the box is blocked.
Attempt missed. David Mellor (Oldham Athletic) right footed shot from outside the box is too high.
Substitution, Oldham Athletic. Sidney Schmeltz replaces James Dayton.
Substitution, Bristol City. Sam Baldock replaces Marvin Elliott.
Goal! Bristol City 1, Oldham Athletic 1. James Dayton (Oldham Athletic) left footed shot from the centre of the box to the bottom left corner.