Wing Tom Prydie's late try capped a fine fight-back as Newport Gwent Dragons came from 14-6 down at half-time to beat Benetton Treviso.
The Italian side looked likely to cause an upset at Rodney Parade when Gideon la Grange and Filippo Giusti went over.
Alberto di Bernardo converted both tries, while Dragons fly-half Steffan Jones struggled with his place-kicking.
Prydie took over the kicking duties, striking two penalties then converting Jones' try and then his own effort.
The hosts were rocked into action early on when Treviso took the lead with a well-worked touchdown that came after pressure in the Dragons' 22.
Ludovico Nitoglia came within a centimetre of scoring and once the ball was recycled it found its way to the left for La Grange to cut back inside and ground the try.
The Dragons, far from going into their shell, hit back and almost went over when number eight Ieuan Jones saw the ball knocked into touch just as he was about to apply the downward pressure.
When other chances came the Dragons' way, Steffan Jones managed just one successful penalty out of three attempts, leaving Prydie to take over and land another penalty before the break.
After Giusti came on for calf-injury victim Robert Barbieri, the back rower was on hand to grab Treviso's second touchdown.
Once Di Bernardo added the conversion, Treviso looked well on the way to victory.
But Jones redeemed himself when he burst through from 25 metres for a run-in under the posts, making Prydie's conversion simple.
That reduced the arrears to a single point and the Dragons were boosted again when wing Christian Loamanu was sin-binned on the hour for foul play on lock Ian Nimmo.
Prydie then attempted to claim a try when he had a tiny amount of room to squeeze through and put the ball over the Italians' line.
It would have been referred to a video referee had there been one watching. Instead all it got was a scrum.
Then the Italians suffered a horrible blow when Di Bernardo fell to the ground and was stretchered off by medics after a five-minute delay.
When the game resumed, the Dragons fired again as Prydie went over for their second try to put the Welshmen into the lead for the first time, converting his own score.
For all their endeavour, Treviso went home without even a losing bonus point when Prydie sent a touchline penalty booming between the posts to leave the Italians nine points short.
It gave the Dragons only their fourth victory out of 14 league games but put them just two points shy from 10th-placed Connacht, who lost without a bonus point, at the Scarlets.
Dragons: Dan Evans; Will Harries, Pat Leach, Jack Dixon, Tom Prydie; Steffan Jones, Jonathan Evans; Phil Price, Hugh Gustafson, Nathan Buck, Ian Nimmo, Adam Jones, Lewis Evans (capt), Nic Cudd, Ieuan Jones.
Replacements: O. Evans for Price (73), Parry for Gustafson (49), Williams for Buck (73), Groves for I. Jones (78).
Not Used: Tyler, W. Evans, A. Smith, Amos.
Treviso: Brendan Williams; Christian Loamanu, Gideon La Grange, Luca Morisi, Ludovico Nitoglia; Alberto Di Bernardo, Fabio Semenzato; Ignacio Fernandez-Rouyet, Giovanni Maistri, Jacobus Roux, Marco Fuser, Corniel Van Zyl (capt), Dean Budd, Valerio Bernabò, Robert Barbieri.
Replacements: Toniolatti for La Grange (73), Pratichetti for Morisi (44), Ambrosini for Di Bernardo (67), Muccignat for Rouyet (67), Sbaraglini for Maistri (67), Di Santo for B. Roux (67), Giusti for Barbieri (23).
Not Used: Sutto.
Sin Bin: Loamanu (58).
Referee: David Wilkinson (IRFU)
Assistant Referees: Jon Mason, Neil Perkins (both WRU)
Citing Commissioner: Gwyn Bowden (WRU)