After New Zealand, riding on Kane Williamson's ton and the heroics of an injury-hit Ross Taylor, scored 341 to grab a 33-run first-innings lead, South Africa lost opener Stephen Cook for a duck.
But despite a 20-minute delay, when a fire alarm in University Oval's main grandstand forced the ground's evacuation, the tourists survived without further loss until bad light stopped play.
Firemen who searched the area blamed steam for setting off the alarm and when play resumed, in gathering gloom, New Zealand's spinners were unable to find success against Hashim Amla, who was unbeaten on 23, and Dean Elgar (12).
Earlier Williamson's 130 plus valuable half-centuries from Jeet Raval and BJ Watling -- along with Taylor's late return despite a calf injury -- carried New Zealand to 341.
It was the first time in seven Tests dating back to 2012 that New Zealand have led South Africa after the first innings.
Williamson brought up his 16th Test century, putting him level with Taylor and one behind the New Zealand record of 17 held by the late Martin Crowe.
It triggered a run of three wickets for 27 runs that had New Zealand 304 for eight when Neil Wagner levelled the scores with a nick off Vernon Philander that brushed Quinton de Kock's fingers on its way to the boundary.
Boult put New Zealand in front with a single off Keshav Maharaj but was bowled soon after by the spinner to bring Taylor back to the middle for a last stand with Wagner.
Taylor, crippled by a calf tear that forced him from the field when on eight early in the innings, was barely able to run when he returned to the crease.
After an early single off Maharaj, his one other scoring shot came from clouting Morne Morkel over the ropes for six.
The 27-year-old Maharaj, in his fifth Test, ended the innings when he had Wagner caught by JP Duminy for 32 to claim five for 94, his first five-wicket Test haul.
Disclaimer: No Business Standard Journalist was involved in creation of this content
