Sri Lanka regained a measure of pride in the fourth ODI, holding their nerve to defeat South Africa by three runs in a thrilling rain-affected encounter on Wednesday.
The Proteas came into this clash holding an unassailable 3-0 lead in the five-match series, but the tourists were undone as they fell just short under the leadership of stand-in captain Quinton de Kock.
Kusal Perera, Dasun Shanaka and Thisara Perera all starred with the bat for the home side, clubbing rapid fifties - Shanaka, on his first ODI appearance in almost two years, the standout with four fours and five sixes in a 34-ball 65 that propelled Sri Lanka to 306-7 from just 39 overs.
A lengthy shower in the early stages of the second innings left South Africa needing 191 from 21 overs - an equation reduced to eight from the last with David Miller on strike but with only two wickets in hand.
And Suranga Lakmal struck the decisive blow, bowling Miller via an inside edge as the Proteas could only reach 187-9 to leave the Kandy crowd jubilant.
Following a couple of early rain delays, Sri Lanka made steady progress with openers Niroshan Dickwella (34) and Upul Tharanga (36) getting starts but at below a run a ball.
Kusal added some impetus, crunching six fours and a pair of maximums en route to a 32-ball 51 before his fun was ended by JP Duminy.
But it was his dismissal that brought Thisara and Shanaka together, the pair hammering 109 in 11.1 overs as the Proteas lost their way at the death - the latter taking 20 from five deliveries in the penultimate set of six bowled by ODI debutant Junior Dala.
Thisara (51 not out from 45) reached his half-century in the final over and after South Africa's reply was halted just two overs in, De Kock perished from the sixth ball following the resumption, missing a Lakmal full toss.
Hashim Amla (40) and Duminy (38) set the foundation for the chase with a 57-stand, ended when the former skewed Akila Dananjaya to backward point. Duminy was looking dangerous, having clubbed three fours and two sixes before he was superbly run out by Shanaka aiming at one stump.
Miller (21 off 17) and Keshav Maharaj (17 from 14) were South Africa's last vestiges of hope, and when both departed in the space of three balls late in the piece, Sri Lanka were able to celebrate avoiding a whitewash.
|I want Wilder, says Joshua|
|Inter must live on the edge to win, says jubilant Spalletti|
|Woods leads by three at Tour Championship|
|Bordeaux end Clermont´s perfect start, Zebo at double in Racing win|
|Lopetegui not worried about Courtois footwork|
|Joshua finds emphatic answer to Povetkin challenge|
|BREAKING NEWS: Brutal Joshua knocks out Povetkin in seventh round|
|Real Madrid can´t win 5-0 every week - Varane|
|Al Ahly 4 Horoya 0 (4-0 agg): Egyptian giants reach CAF Champions League semi-finals|
|Kings upset Warriors, Leinster batter Edinburgh|
|Son committed to Tottenham amid Bayern links|
|Simeone hails Atleti´s best LaLiga display of the season|
|Kovac: Bayern ´dominated´ Schalke in 2-0 win|
|Pochettino unimpressed with Tottenham´s tense finish|
|Campbell gains revenge as Price is halted by injury|
|Tottenham fatigue rumours are a myth, claims Rose|
|Widnes defiant after Super League relegation, Saints outclass Wolves|
|NFL must go back to college to eradicate the tie|
|Real Madrid 1 Espanyol 0: Asensio downs old club to earn narrow win|
|Sampdoria 0 Inter 1: Brozovic wins it late after VAR takes centre stage|
|Rudy takes blame for James goal in Bayern win|
|Tiger charges into four-shot lead|
|Players have given their lives to Burnley - Dyche|
|QPR 0 Norwich City 1: Pukki hits winner as hot streak continues|
|Nuno proud of Wolves character in Man United draw|
|Playing for England my dream, says in-form Maddison|
|Brighton and Hove Albion 1 Tottenham 2: Kane on target as Spurs issue firm response|
|Schalke 0 Bayern Munich 2: James and Lewandowski deliver another win|
|Getafe 0 Atletico Madrid 2: Lemar inspires routine win|
|Championship Review: Monk ruins Leeds´ unbeaten streak, McGinn screamer fails to save Villa|
|Bale benched for Real Madrid-Espanyol|
|Biggar fails to rescue Saints at Bath, Bristol and Wasps win|
|Zaha affected by back injury – Hodgson|
|Mourinho slams Manchester United attitude after Wolves stalemate|
|Herbert holds Portugal Masters advantage|
|Warnock blasts ´elementary´ Cardiff mistakes|
|Shaqiri substitution not easy for Klopp|
|Guardiola hopes for even more to come from Aguero|
|Fellaini accepts United closing gap to Premier League summit will be difficult|
|Klizan to face Thiem in St. Petersburg final, Bachinger shocks Nishikori|
|Klopp: Van Dijk injury not serious|
|Mourinho annoyed by Man Utd´s blunt attack in Wolves draw|
|Valverde not ready to consider Barca contract extension|
|Gattuso wary of wounded Atalanta as Higuain receives further advice|
|Burnley 4 Bournemouth 0: Rampant Clarets claim first Premier League win of the season|
|Crystal Palace 0 Newcastle United 0: Sakho misses sitter as Magpies remain winless|
|Cardiff City 0 Manchester City 5: Aguero celebrates new deal with goal in 300th game|
|Leicester City 3 Huddersfield Town 1: Comeback win eases pressure on Puel|
|Liverpool 3 Southampton 0: Salah ends goalless run as Reds make best Premier League start|
|Manchester United 1 Wolves 1: Moutinho stunner sees Red Devils falter at home again|
|Rashid, Hasan and Asghar fined by ICC|
|Barnsley game postponed after medical emergency|
|Johnny Manziel sacked five times in ugly CFL loss|
|Fosu-Mensah says sorry for tackle on Deeney|
|Kluivert to get Roma chance as Di Francesco demands focus|
|Robinson optimistic injured Cronk will be fit for Grand Final|
|WATCH: Ferguson given immense ovation on Old Trafford return|
|Three in a row for Lorenzo at Aragon|
|Warner makes 155 on Australian grade cricket return|
|Pain-free Kyrie Irving ready to lead Celtics to NBA title|
|Firmino returns as Shaqiri gets first league start|
|Fulham 1 Watford 1: Mitrovic shines late to spoil Gray´s day|
|Ronaldo vows to lose weight and assist training after Real Valladolid purchase|
|Patriots WR Josh Gordon listed as questionable to face Lions|
|500th goal was crucial to my new book - Ibrahimovic|
|Roosters survive Cronk injury to hold off Souths and reach Grand Final|
|Murray announces intention to end season early|
|I want to play right-back for England - Walker|
|I would beat Bolt for speed on the pitch, claims Traore|
|Ferguson returns to Old Trafford for Manchester United v Wolves|