The SSE Airtricity League title race was blown wide open at Oriel Park on Tuesday night as Dylan Watts’ 94th-minute penalty brought a dramatic end to Dundalk’s 13-game winning run.
With the game deep in stoppage time, it looked like Stephen Kenny’s side were about to move four points clear of Cork City at the top of the table with just seven games to play.
However, referee Rob Harvey, who dished out a total of nine yellow cards, became public enemy number one when he ruled that Sean Gannon had fouled Ronan Finn in the penalty area and Watts showed remarkable composure to slot home the spot kick and spark wild celebrations in the away end - and on Leeside.
The result leaves Dundalk three points clear and still in the driving seat but with a trip to Turner’s Cross still on the horizon next month, it’s very much a case of game on at the top.
Kenny rested a number of his big hitters for the FAI Cup win over Finn Harps on Friday night but they were back in force here with Michael Duffy, Patrick Hoban and Patrick McEleney all named in the line-up.
With no FAI Cup to play for, Rovers had 10 days to prepare for the game and they started like a team determined to exorcise the demons of a Dublin derby loss to Bohemians in their last outing.
Less than 90 seconds had elapsed when they stunned the home support into silence. Brian Gartland’s swipe at Ronan Finn on the left-hand side allowed Dylan Watts to deliver a telling free-kick and Roberto Lopes capitalised on some poor defending to head home.
With the midfield trio of Finn, Greg Bolger and Dylan Watts holding sway in the middle of the park, Dundalk struggled to get into it but even though they looked comfortable, Stephen Bradley’s side rarely looked like adding to their lead with the busy Dan Carr sending a drive well off target.
The cards started to appear with Harvey flashing yellow at Hoban, Jamie McGrath and Greg Bolger and Dundalk - roared on by the crowd - clawed their way back into it as the half wore on.
With Joel Coustrain AWOL, Michael Duffy had his first opportunity to run at an exposed Ethan Boyle in the 28th minute but his cross, which had Alan Mannus back peddling, cleared everybody in the centre.
Their best opening came in the 33rd minute when Gannon, who was furious not to be awarded a free-kick by Harvey seconds earlier, showed great perseverance to win the ball from Lee Grace on the right touchline before surging forward but his pull back was blazed over the top by the incoming Robbie Benson.
The hope amongst the home supporters at the break was that the trend would continue after the restart but it was Rovers who almost repeated their first-half exploits with Brandon Miele steering an effort just wide of the post.
Things continued to zip along and Oriel Park exploded into life as Dundalk pulled themselves back on level terms in the 54th minute. Duffy was rewarded for taking the initiative, driving at Rovers in a central area before letting fly and his effort took a big deflection off a Rovers defender to loop over the helpless Manus.
Dundalk went in search of a winner with Duffy at the heart of most of their approach play but Rovers held firm and with 10 minutes to play, the game was there to be won.
Dylan Watts almost did just that for Rovers with a well-hit free-kick that forced Gary Rogers into a fine save and substitute Gary Shaw had Dundalk hearts racing when he broke in between Gartland and Hoare but couldn’t get his shot away.
The hosts pushed hard in the minutes that remained and they passed up a golden opportunity to take all three points with four minutes to play when Duffy picked out Benson from the left but the midfielder’s header cleared the bar.
That looked to be that but there was still time for a late twist and just seconds after Gartland cleared a Brandon Kavanagh effort off his line, Gannon crashed into Finn and Watts did the rest.
Dundalk: Gary Rogers; Sean Gannon, Brian Gartland, Sean Hoare, Dane Massey; Chris Shields, Robbie Benson (John Mountney 90); Jamie McGrath (Ronan Murray 77), Patrick McEleney (Dylan Connolly 56), Michael Duffy; Patrick Hoban.
Subs not used: Daniel Cleary, Dean Jarvis, Georgie Kelly, Gabriel Sava (GK).
Shamrock Rovers: Alan Manus; Ethan Boyle, Lee Grace, Roberto Lopes, Sean Kavanagh; Joel Coustrain (Brandon Kavanagh 80), Greg Bolger, Dylan Watts, Brandon Miele (Aaron Greene 70); Ronan Finn; Dan Carr (Gary Shaw 80).
Subs not used: Joey O'Brien, Aaron Bolger, Sam Bone, Gavin Bazunu (GK).
* An earlier version of this report wrongly identified Robert Rogers as the match referee. It was in fact Robert Harvey.