Aaron Greene scored a dramatic stoppage time winner to break 10-man Bohemians' resolve to win the big Dublin derby in horrendous conditions at Dalymount Park.
In a tight, full-blooded contest, Gypsies’ right-back Andy Lyons was sent off for a second booking with 25 minutes to go.
Despite that, technically more accomplished Rovers had struggled to breach the dogged home defence, who looked like they would hold out for a share of the spoils.
But that narrative changed three minutes into added time.
Rovers midfielder Aaron McEneff’s low drive was spilled on the greasy surface by goalkeeper James Talbot. Greene’s striker’s instinct saw him react quickest to rifle the loose ball into the roof of the net.
The high gusts caused by storm Dennis forced the cancellation of RTE's scheduled live television coverage of the game as the camera gantry and presentation area were deemed unsafe.
Bohemians were forced into a change before kick-off with stalwart striker Dinny Corcoran injured in the warm-up.
Starting with the strong wind behind them, the home side had an early shout for a penalty when the marauding Lyons went down inside the area on two minutes.
All the young defender got was a yellow card for simulation which would duly come back to haunt him.
Though the conditions made play very difficult, Rovers passed the ball well, carving the first opening on 15 minutes as Greene blasted a volley just over the top.
Two minutes later, the guile of Jack Byrne found the run of Greene whose half-hit shot was cleared by Rob Cornwall.
The Bohemians defence was then relieved to see Lee Grace shoot wide after they failed to clear a Byrne corner.
With rain now coming down in a torrent, Bohemians didn’t threaten until the 25th minute; new signing Kris Twardek seeing his drive bravely blocked away for a corner by Roberto Lopes.
That sparked the home side’s first good spell of the game with Keith Ward forcing a fine save at full stretch from Alan Mannus from a wind-assisted free kick eight minute before the break.
Winger Twardek then wasted a promising opening just a minute after the interval, drilling wide across goal after skipper Keith Buckley picked him out in space.
With the pitch having cut up badly, both sides admirably continued to try to pass the ball.
Talbot was worked by shots from Graham Burke, McEneff and then Byrne as Rovers regained the initiative.
The latter effort followed the 65th minute sending off of Lyons for a hefty challenge on Burke, his second yellow card.
Cue the late onslaught as Rovers’ substitute Dylan Watts had a goal bound shot blocked by James Finnerty while Anto Breslin cleared off the line as Bohemians courageously tried to keep their goal intact only for Greene’s late, late deadlock breaker.
Bohemians: James Talbot; Andy Lyons, Rob Cornwall, James Finnerty, Anto Breslin; Kris Twardek, Keith Buckley, JJ Lunney, Luke Wade-Slater (Danny Mandroiu 63); Keith Ward (Michael Barker 68); Andre Wright.
Shamrock Rovers: Alan Mannus; Joey O’Brien (Liam Scales 56), Roberto Lopes, Lee Grace, Daniel Lafferty (Neil Farrugia 75); Gary O’Neill; Ronan Finn, Jack Byrne, Aaron McEneff, Graham Burke (Dylan Watts 75); Aaron Greene.
Referee: Rob Hennessy (Clare)