Millwall 1 Bristol City 1
Millwall roused themselves after a disappointing first half to earn a deserved share of the spoils.
They trailed to a goal early on and struggled to get on the ball during a first half characterised by the visitor's superior passing and possession.
But the Lions worked up a head of steam after the break, forcing an equaliser and going close to bagging all three points.
The draw was Bristol's first in 19 games and does little for either side's prospects of making the top six by the end of the campaign, but with Preston losing, Millwall can still dream. They are 10th in the Championship now, five points adrift of that all-important sixth spot.
Bristol were in front with the game barely 10 minutes old. The Lions failed to deal with a corner and the ball ran loose to the edge of the area for Pedro Pereira to drill into the bottom corner.
Millwall responded with incursions down the right flank from Mahlon Romeo and Tom Bradshaw sending a glancing header just wide after a nice angled ball in from Connor Mahoney.
Matt Smith tested the keeper from inside the box and Romeo chanced his arm from distance.
Six minutes into the second half and it was all square, with Smith bundling in a corner at the far post against his old club, although the ball may have come off defender Tomas Kalas.
It was only the Lion's third goal in seven matches this month and came as a big relief.
With the mood transformed, Smith went close soon after with a firmly struck header and then Bradshaw wriggled past a couple of defenders before blasting into the side-netting.
It looked like Millwall might go on to claim the win, but the game's frenetic pace was matched by a lack of composure in the final third and the match eventually petered out.
Line up: Bialkowski – Romeo, Hutchinson, Cooper, M Wallace – Molumby, Woods, Mahoney (Bennett 74), J Wallace – Bradshaw (O'Brien 85), Smith (Bodvarsson 75). Subs not used: Steele, Ferguson, Pearce, Skalak