Connacht claimed a precious home win over Edinburgh as they lifted themselves off the bottom of the RaboDirect PRO12 table.
But they had to do it the hard way against Edinburgh, whose last two league ties were postponed due to bad weather.
Roddy Grant's first try of the season was replied to by a Craig Ronaldson penalty, but the Connacht out-half missed his next three place kicks as Edinburgh led 7-3 at half time.
But Michael Swift, Connacht's most-capped player, plunged over in the 47th minute and Dan Parks came off the bench to kick the clinching penalty.
The westerners were unable to capitalise on their early possession and it was the visitors who swept into a seventh-minute lead, with Grant driven over following a quick ruck recycle.
Nick De Luca's break up to the hosts' 22 did the initial damage and Grant had good support as he touched down from close range. South African newcomer Carl Bezuidenhout added the conversion.
Kieran Marmion threatened for Connacht before they opened their account midway through the half, winning a penalty at an Edinburgh scrum which Ronaldson stuck over.
With a lack of line-breaks and serious try-scoring threats, there was little spark shown by either side approaching the break and Ronaldson's series of missed kicks did little for his or the home fans' confidence levels.
Edinburgh had the wind at their backs in the second period, but it was Connacht who lifted the intensity and accuracy of their play on the resumption. Eoin Griffin provided the momentum with a rare line break and Cornell du Preez's sin-binning - five metres out from the Edinburgh line - gave Connacht the impetus to take the lead.
The Scots' brave defence finally relented as second row Swift crossed near the posts after a series of pick and drives. Ronaldson's kicking woes continued, though, as he hit the post with the conversion.
Bezuidenhout missed a 51st-minute penalty and, with their error count rising, Edinburgh's frustrations only grew. Connacht took control as the second-half wore on, with man-of-the-match Ronan Loughney a prominent figure up front, and Parks' drilled penalty in the 68th minute enough to settle the issue.
Connacht: Henshaw, Carr, E. Griffin, McSharry, O'Halloran, Ronaldson, Marmion, Buckley, Harris-Wright, Ah You, Kearney, Swift, Browne, Heenan, Muldoon. Replacements: Heffernan, Loughney, Cooney, Muldowney, Naoupu, O'Donohoe, Parks, D. Leader.
Edinburgh: Cuthbert, Fife, De Luca, Strauss, Brown, Bezuidenhout, Hart, Blaauw, Hilterbrand, Nel, Gilchrist, van der Westhuizen, Coman, Grant, Du Preez. Replacements: Ford, Allan, Cross, Atkins, Leonardi, Hidalgo-Clyne, Beard, Leonard.
Referee: C Blessano (Italy).