Leinster maintained their PRO12 title challenge as they eventually subdued a battling Treviso side in Italy.
Early tries by Leo Auva'a and Fionn Carr helped Leinster lead 14-3 but Tobias Botes' four penalties cut the margin to 17-12 by the interval.
Manoa Vosawai's try helped Treviso level by the 51st minute with Botes missing the straightforward conversion.
In contrast, Fergus McFadden continued to kick brilliantly for Leinster as Eoin O'Malley's try made the game safe.
With Leinster resting Ireland stars Jonathan Sexton, Rob Kearney, Leo Cullen and Sean O'Brien, Treviso must have fancied their chances - particularly after defeating the Irish province 29-13 at the Stadio di Monigo last season.
However, Treviso appeared asleep in the opening moments as number eight Auva'a ran in a try unopposed after only 35 seconds.
McFadden, taking the kicking duties because of the absence of Sexton and Isa Nacewa, slotted the conversion and went on to have a 100% record with the boot as he contributed 15 vital points.
Botes replied with a Treviso penalty in the fourth minute but Leinster responded with their second try four minutes later as Carr scored unchallenged after some slick hands from O'Malley and Luke Fitzgerald.
McFadden's conversion extended Leinster's lead to 14-3 and there was a suspicision that the visitors could be set to run away with it.
But to their credit, Treviso steadied up during the remainder of the first half.
Impeccable goalkicking from Botes enabled the Italians to cut Leinster's lead to 17-12 at the break with McFadden adding three more points for the Irish province.
Treviso were also attempting to keep ball in hand and the efforts of runners such as Brendan Williams made for an entertaining contest.
Botes maintained his 100% kicking return four minutes after the break after a scrum infringement but the lead was five again as McFadden replied three minutes later.
However, Treviso were on terms in the 51st minute as replacement Vosawai barged his way over from close range after Gordon D'Arcy had been forced to concede a five-metre scrum.
Surprisingly, Botes missed the straightforward conversion after his earlier exploits with the boot.
McFadden quickly had Leinster ahead again with another penalty but Treviso were starting to dominate possession although another bad Botes penalty miss kept the visitors in front.
Then came the crucial moment of the match as O'Malley skipped past three tackles to score under the posts after a Leinster scrum on the Treviso 10-metre line.
McFadden added the conversion to increase Leinster's lead to 30-20.
Treviso produced late pressure but a big hit in the scrum by Cian Healy helped Leinster earn a relieving penalty.
After his earlier kicking brilliance, Botes' second-half nightmare was complete as he missed a late chance from in front of the posts which would have earned Treviso a bonus point.
Benetton Treviso: Luke McLean; Benjamin De Jager, Tommaso Benvenuti, Alberto Sgarbi, Brendan Williams; Kristopher Burton, Tobias Botes; Michele Rizzo, Enrico Ceccato, Lorenzo Cittadini; Antonio Pavanello (capt), Valerio Bernabo; Paul Derbyshire, Alessandro Zanni, Robert Barbieri.
Replacements: Franco Sbaraglini, Matteo Muccignat, Ignacio Fernandez Rouyet, Benjamin Vermaak, Manoa Vosawai, Francesco Minto, Fabio Semenzato, Alberto Di Bernardo
Leinster: Luke Fitzgerald; Fergus McFadden, Eoin O'Malley, Gordon D'Arcy, Fionn Carr; Ian Madigan, Eoin Reddan; Cian Healy, Sean Cronin, Jamie Hagan; Damian Browne, Devin Toner; Rhys Ruddock, Shane Jennings (capt), Leo Auva'a.
Replacements: Aaron Dundon, Jack McGrath, Nathan White, Kevin McLaughlin, Jamie Heaslip, Isaac Boss, Noel Reid, Brendan Macken.