South Africa beat Sri Lanka by 22 runs in the second Twenty20 international in Hambantota to take an unassailable 2-0 lead in the three-match series.
Sri Lanka never looked like chasing down the Proteas' 145-6, despite 39 from the in-form Kumar Sangakkara.
Nuwan Kulasekara was back in the Sri Lanka team after injury and found his in-swing aided by the stiff wind, helping him bowl Henry Davids with a fine first ball of his second over.
After a slow start, Quinton de Kock hit three fours in four balls off Sachithra Senanayake and Kulasekara. He made 19 before his ploy of constantly skipping down the pitch to spinner Senanayake saw him stumped.
Lasith Malinga returned to bowl Faf du Plessis (12) with a signature yorker and after 10 overs South Africa were 59-3.
JP Duminy hit two fours off Jeevan Mendis as 15 came from the 12th over but was well taken by Angelo Mathews off Senanayake for 29 after AB de Villiers was brilliantly run out by Kusal Perera for 15.
David Miller was straight into his stride, hitting sixes of Mathews and Ajantha Mendis and a four off Malinga in a breezy 36 from 21 balls before skying Kulasekara to Dinesh Chandimal.
Wayne Parnell hit eight off the last three balls to lift the Proteas to 145, Kulasekara finishing with 2-22 and Senanayake 2-18.
Mahela Jayawardene whipped the fifth ball of Sri Lanka's reply for four but edged the next to keeper De Kock to leave his side 8-1.
Perera hit three fours in Morne Morkel's first two overs but Chandimal made just two before he, like Jayawardene, edged Lonwabo Tsotsobe to De Kock.
Sangakkara welcomed Parnell to the attack with boundaries from his second, third and fourth balls, though the latter two were edges.
Perera was lbw for 21 after missing a reverse sweep at Imran Tahir and Lahiru Thirimanne (18) ended an uncertain over by missing a Parnell inswinger which hit his off stump.
And when Mathews fell for one and Sangakkara followed to a superb catch by David Wiese, Sri Lanka were deep in trouble at 90-6 with five overs remaining.
Kulasekara hit Morkel for six but then edged to De Kock and Thisara Perera could only manage 10 of the 33 needed from the last nine balls.