Bafana Bafana progressed to the COSAFA Cup plate final after defeating Uganda on penalties at Princes Magogo Stadium.
Uganda re-called Dan Serunkuma to the side, while Bafana instituted a number of changes which included goalkeeper Mondli Mpoto, Bongani Sam, Kamohelo Mahlatsi, Keanu Cupido and Gift Links.
Bafana were under pressure earlier on, as Mustafa Kizza forced Mpoto into a reaction save on eight minutes and denied Juma Balinya a minute later from close-range.
South Africa coach David Notoane was forced in to an early change as Sam hobbled off for Jamie Webber after just 10 minutes, which certainly destablised their game-plan.
Bafana soon found their rhythm and launched their first threat on 17 minutes through Cupido, who headed against the woodwork from a corner with the Ugandan shot-stopper well beaten.
The tempo dropped as the half went by, with both nations battling to get a foothold in attack as the first spell drew to a close.
Uganda grabbed the lead two minutes after the break after Serunkuma cut in to the centre of the area to find the bottom corner.
Bafana lived on the ropes, as Mpoto tipped Balinya’s long-range drive on 58 minutes away for a corner. From the corner, Mpoto pulled off a one-handed save at the near post from a low header by Isaac Isinde as the worrying times continued.
Bafana levelled on 72 minutes after Luther Singh dropped to the shoulder of the area to rifle past Charles Lukwago after collecting a pass from Jemondre Dickens.
The host nation failed to finish off the clash in added time, with Lukwago pulling off a double save from shots by Katlego Sekgota and Singh as the match went to penalties.
Mpoto proved to be the hero in the shoot-out with two saves, allowing Jamie Webber to convert the winning penalty to secure a spot in the plate final.
Uganda: Lukwago, Willa, Kizza, Isinde, Revita, Mutyaba, Mutyaba, Birungi, Kagimu, Balinya, Serunkuma.
Subs: Alitho, Mbowa, Mucureezi, Bright, Senkatuka, Daniel, Mujjuzi, Kayiwa, Hassan.
Bafana: Mpoto, Cupdio, Mohamme, Sam, Mthethwa, Mokoena, Mbule, Mahlatsi, Links, Mukumela, Singh.
Subs: Pieterse, Dlala, Margeman, Dickens, Makgalwa, Webber, Jordan, Malepe, Lepasa, Sekgota, Frosler.