Peter Horne came off the bench to score a crucial second-half try as Glasgow Warriors won away to Leinster for the first time.
Leinster's 28-match winning streak in regular-season games at the RDS was brought to an end in the RaboDirect Pro12 clash, despite the province enjoying the majority of possession and plenty of time in the visitors' 22.
The hosts' attack was well off its best in a below-par display with lock Nick Campbell, who touched down for a first-half try, and place-kickers Scott Wight and Duncan Weir completing the Scottish side's scoring.
Isa Nacewa's penalty gave Leinster a 3-0 lead inside three minutes but despite young out-half Ian Madigan and Nacewa showing glimpses of their attacking prowess, they faltered in the final third.
Glasgow had an opportunity to level the scores after 12 minutes but Wight's penalty from halfway cannoned back off the right post.
Leinster responded with another period of sustained pressure, yet a second Nacewa penalty was all they could show for being camped inside the Glasgow half for a 10-minute spell.
Wight made up for his earlier miss when he split the posts with a penalty from the right.
Leinster were then left to rue their missed chances on the half hour when Campbell dived over after Leinster failed to clear their lines. Wight converted to give the Scottish side a 10-6 advantage.
Leinster's stuttering attack finally crossed the whitewash approaching half-time. David Kearney broke into the Glasgow 22 and linked with Dominic Ryan who offloaded for Madigan to score by the posts. Nacewa added the conversion to give the home side a deserved 13-10 lead at the break.
Glasgow's replacement out-half Weir and Nacewa exchanged penalties in the opening five minutes after the restart before play was held up for what looked like a serious injury to flanker Ryan.
Nacewa and Weir again traded penalties, following the sin-binning of Glasgow captain Rob Harley.
At 19-16, Leinster seemed to be in control but again they lacked a clinical edge and failed to convert their pressure into points.
It came back to haunt them when Horne skated through the home defence for a 66th-minute try which Weir added the extras to.
Leinster boss Joe Schmidt had to withdraw Luke Fitzgerald due to injury, and Brendan Macken, a try-scorer against the Dragons last weekend, was brought into the fray. Kevin McLaughlin also picked up a knock which will require a scan.
Leinster recycled the ball well from a lineout after Madigan found touch but were thwarted by a resolute Glasgow defence on a number of occasions, and the Warriors held on.