Millwall were left wondering what might have been after battering Doncaster's 10-men but failing to find a way through to secure a priceless victory at The Den.
Rovers were reduced to 10 men a couple of minutes before the break when Abdoulaye Meite was shown a straight red card for a reckless challenge on Stefan Maierhofer.
Thereafter it was literally one-way traffic as The Lions pressed and probed for that precious opening goal. The stats don't lie and The Lions had 70 per cent of the possession, chalked up 19 shots on target and won 14 corners, yet could not find a way through a supremely organised Doncaster defence.
Showing just one change to the team that started at Middlesbrough - Scott McDonald replacing flu victim Owen Garvan - there was little noteworthy action in the opening half until the 42nd-minute when Meite was dismissed by referee Fred Graham for his late tackle on Maierhofer.
Sub Steve Morison, a half-time replacement for Martyn Woolford, hit an instinctive first-time half-volley on 55 minutes, but his pile-driver was brilliantly tipped over for a corner by keeper Sam Johnstone just moments after he had turned away a fierce effort from Shaun Williams at full stretch.
Morison again went close with a thumping header from Lee Martin's corner that smacked against the bar and flew over before fellow sub Simeon Jackson looked certain to score when Morison's cross flashed across the face of goal, but Paul Quinn made a crucial last-ditch interception.
Millwall: Forde, Edwards, Malone, Bailey, Beevers, Dunne, Martin, McDonald (Easter, 66mins), Williams, Maierhofer (Jackson, 65mins), Woolford (Morison, 46mins). Subs not used: Bywater, Robinson, Abdou, Fredericks.
Millwall attacked relentlessly with defender Mark Beevers virtually operating as an extra striker in the final 10 minutes, but there was just no way through.
Both Beevers and Morison saw goal-bound shots blocked in injury-time and that crucial opening goal would not come as The Lions had to settle for a point when they really should have conjured up all three.
Bookings: Beevers (45+1min), Bailey (86mins)
Doncaster Rovers: Johnstone, Quinn, Furman, Brown, Cotterill, Tamas, Keegan, Meite, Robinson (McCombe, 89mins), Coppinger, Stevens. Subs not used: Maxted, Duffy, Sharp, McCullough, De Val, Middleton.
Booking: Cotterill (57mins)
Sending off: Meite (43mins)
Ref: F. Graham
Att: 12,026 (away 562)