Cork City came from behind at Dalymount Park to inflict a second defeat in five days on Bohemians as both sides wasted chances to forge ahead early.
The Gypsies gained their breakthrough from a 35th-minute corner. Stephen Traynor's delivery was pinpointed to the onrushing Owen Heary but Cork midfielder Colin Healy got there first and volleyed the ball into his own net.
Sadly for Heary, he would play a part in Cork's equaliser seven minutes later. He tripped Gearoid Morrissey as he raced into the box and Denis Behan hit the ensuing penalty past Dean Delany.
Bohs pushed on after the break, with Traynor drawing a save from Mark McGinty, who then made a smart save to deny David Scully.
Bohemians' reserve goalkeeper Greg Murray, on for the last half hour in place of the injured Delany, hadn't been seriously tested until the winner arrived nine minutes from the finish.
It was a creation of the two Morrisseys, as Gearoid burst to the end line on the left and crossed the ball for Danny to steer his volley past Murray from six yards out.
Bohemians – Delany (Murray 63); Pender, Heary, Mulcahy, Byrne; Moore (Devaney 82), McEvoy, Traynor (Barker 82), Mulligan; Scully, Lyons.
Cork City – McGinty; Horgan, Spillane, Dunleavy (Buckley 87), Murphy; Morrissey, Healy, Duggan, Horgan (Turner 64); Behan (Kavanagh 63), Morrissey.
Ref – P Tuite (Dublin).