Four wickets in a session swung the first Test in favour of the Proteas after a resolute fight by Bangladesh in Potchefstroom.
They went into tea on 308-8, with two new batsmen at the crease, Mehidy Hasan (8) and Shafiul Islam (0).
There was a wicket apiece for Maharaj Keshav, Duanne Olivier and the ever-threatening Morne Morkel, with the first delivery of the new ball. Then a brilliant stop by Temba Bavuma set up a run-out which left the visitors reeling at 305-8 after starting the day on 127-3. They lost the last three wickets for 18 runs.
They had looked so settled, until Duanne Olivier made a telling breakthrough late in the session, beating Sabbir Rahman for pace. That prompted Faf du Plessis to call for the new ball and Morkel made full use of it, as Mahmudullah dragged on after compiling 66.
They had worked for their success, for the Bangladeshis weathered an early assault by Morkel and Kagiso Rabada, who had a series of appeals turned down, and missed out on dismissing Mominul when Du Plessis chose not to review the decision.
Even when Tamim Iqbal became Andile Phehlukwayo’s first Test victim, superbly caught by Quinton de Kock down the leg side, they continued to dig in and rebuild.
Mominul had played superbly for his 77 and he had excellent backing from Mahmudullah as they put on 69 for the fifth wicket. He was eventually undone by a moment of Maharaj magic, receiving a delivery which caught him in two minds. He stepped back and prodded it into the hands of Aiden Markram at forward short leg.
Markram’s debut continues to impress, for not only has he three catches, but he was brought on to bowl two overs of offbreak, which yielded 13 runs.
SA (1st innings) 496-3 declared – Dean Elgar 199, Hashim Amla 137, Aiden Markram 97
Bangladesh (1st innings) 308-8 – Mushfiqur Rahim 44, Tamim Iqbal 39, Mominul Haque 77, Mahmudullah 66.
Bangladesh trail by 188 runs