South Africa beat Pakistan by 13 runs via the Duckworth-Lewis method on Friday in Centurion to take a 2-1 lead in the five-match series of one-day internationals.
The home team's pursuit of Pakistan's impressive total of 317-6 was shaping up to be a thrilling one before rain intervened.
Under-fire Pakistan captain Sarfraz Ahmed apologises for passing racial remarks on Andile Phehlukwayo
Reeza Hendricks, who was undefeated on 83, and captain Faf du Plessis (40 not out) were in the middle of a 108-run stand when the bad weather forced the players off for the second and last time at SuperSport Park with South Africa on 187-2 after 33 overs.
The game was finally called off and the result confirmed over an hour later.
Pakistan's score was built around opener Imam-ul-Haq, who made 101 and was one of a number of batsmen dropped in a sloppy display by South Africa in the field.
Imam also became the second-fastest player to reach 1,000 ODI runs, behind teammate Fakhar Zaman. The duo has pushed West Indies great Viv Richards, who set the record 38 years ago, down to third on that list.
Babar Azam was also given a life and went on to hit 69 from 72 balls in a 132-run partnership with Imam.
South Africa was 79-2 in reply and under pressure when Hendricks and du Plessis came together. Hendricks hit eight fours and pulled two sixes over midwicket on the way to his second ODI half-century.
The International Cricket Council governing body is gathering information on the incident but hasn't announced any formal proceedings against Sarfraz, who apologized the day after and said his remarks were a general expression of frustration not aimed specifically at the South African.
Sarfraz also apologized in person to Phehlukwayo ahead of Friday's game.