Substitute Nicky Adams scored an 89th minute equaliser to deny ten man Walsall victory at Rotherham.
The Saddlers had looked set to snap an eight game winless run and inflict a first defeat in 11 on the Millers when Milan Lalkovic handed them a first half lead.
But Adams broke their hearts with a minute to go when his deflected volley went in off the bar.
Walsall had earlier seen Ben Purkiss sent off for two bookable offences.
Dean Smith’s side saw their winless run stretched to nine games but they should take great heart from a fine performance, even though their play-off chances now look more distant than ever.
Saddlers scorer Lalkovic was restored to the starting line-up in place of Troy Hewitt, one of two changes to the team which drew 1-1 with Crewe on Tuesday as Sam Mantom returned in midfield following his three-game suspension. Nicky Featherstone dropped to the bench.
The game got off to a rather non-descript start with Millers top scorer Alex Revell off target with a header and then a volley but little else to report in the opening 19 minutes before the Saddlers took the lead.
The move began with a free-kick and ended with Lalkovic latching on to Romaine Sawyers’ through ball and holding off his marker before lifting a finish over Collin.
With the home crowd becoming increasingly antagonised by referee Andy Woolmer’s decisions, the Saddlers were looking comfortable and Andy Taylor tested Collin with a low effort from distance.
Rotherham looked dangerous at times in attack and Ben Pringle had a shot blocked before Lee Frecklington hammered the loose ball over.
But when the pressure was on the Saddlers defended admirably, with centre-back James Chambers and Andy Butler getting vital headers on tricky crosses from the impressive Pringle.
When they did let Kari Arnason escape at a set piece early in the second half, the defender somehow contrived to head over from just a handful of yards out. Joe Skarz had a shot blocked following a neat move, while Frecklington fired over as the hosts looked for a leveller. Purkiss then picked up his first blocking for trying to block a throw-in.
The Saddlers were having to survive a bit of a storm but had their moments in attack, with Romaine Sawyers driving wide after an exchange with Westcarr.
At the other end, substitute Haris Vuckic was denied when Taylor blocked his far post volley at close range, while Frecklington sent a volley wide of the post from the resulting corner.
Sawyers was then denied the chance to double the lead by Collin at close range after latching on to a Westcarr through ball.
A minute later, Purkiss was shown a second yellow for blocking Pringle and the Saddlers were down to ten men.
Smith brought on Paul Downing as James Chambers switched to right back and the substitute made a crucial block to deflect a Revell shot behind.
Nicky Adams headed wide from Arnason’s long throw as the tension built and then got the equaliser when his first time volley deflected off a defender and went in off the bar.
O’Donnell then saved from Frecklington in stoppage time as the hosts hunted a winner.