Sadio Mane became the leading scorer in the 2019 Africa Cup of Nations Friday when he scored the goal that gave Senegal a 1-0 win over Uganda in a feisty last-16 clash.
The Liverpool star struck on 15 minutes with a close-range shot after a passing move carved open the Ugandan defence in Cairo.
Mane later missed a penalty — the second time he has fluffed a spot-kick in as many matches — but his three-goal tally from three matches moved him ahead of 11 scorers with two each.
In the quarter-finals, Senegal will face fellow west Africans Benin, who stunned Morocco earlier, winning a penalty shootout after a 1-1 draw following extra time.
A fiery start at the Cairo International Stadium to the second last-16 match saw two Ugandans and one Senegalese yellow-carded within 10 minutes of the kick-off.
Uganda captain and goalkeeper Denis Onyango was first to be booked after racing off his line and fouling Ismaila Sarr, who needed lengthy treatment.
Giant Uganda forward Emmanuel Okwi was the next offender with his elbow brushing the face of Senegal centre-back and captain Cheikhou Kouyate.
Senegal midfielder Papa Ndiaye then went into the book of the referee for deliberately pushing a Ugandan so hard he tumbled off the pitch.
As tempers cooled, Senegal scored through Mane, who shared the Premier League Golden Boot last season with Liverpool team-mate Mohamed Salah and Pierre-Emerick Aubameyang of Arsenal.
A Ugandan pass was intercepted and two quick, slick passes sent Mane clear to fire left-footed past Onyango, one of the top goalkeepers in Africa.
On 18 minutes, Uganda lost centre-back Hassan Wasswa after he injured his left hamstring and Timothy Awany took his place.
Midfielder Khalid Aucho became the third Ugandan to be yellow-carded, for a blatant foul, and Okwi was lucky to escape a second caution and a red card later in the half.
There were more cards than goal attempts on target in the opening 45 minutes, which ended with Senegal comfortably retaining a one-goal advantage.
The match not only lacked goalmouth excitement, but also atmosphere with a crowd of just a few thousand dotted around the 75,000 stadium, where the final will be played on July 19.
Scorching heat, costly tickets and a lack of interest by Egyptians in teams other than their own Pharaohs are some of the reasons for the poor attendances.
Senegal had a great chance to double their lead when Mane was fouled by Onyango, but the Liverpool star failed to convert the penalty, a fate he also suffered against Kenya.
He aimed for the right corner, but Onyango guessed correctly and made a brilliant two-hand save to keep the Cranes in the match.
Senegal centre-back and Napoli star Kalidou Koulibaly was the fifth player to be booked as an intensely physical encounter entered the final quarter.
As free-kicks were continually conceded, Uganda had several opportunities to equalise and came close on 80 minutes when goalkeeper Alfred Gomis pushed away an Allan Kateregga effort.