Senegal reached the Africa Cup of Nations semi-finals after a goal by Everton midfielder Idrissa Gueye ended Benin’s tournament.
Gueye started and finished a move which saw Liverpool’s Sadio Mane tee up his team-mate to score in Cairo.
The Video Assistant Referee system has been introduced from the quarter-final stage and Mane had two goals disallowed for offside after VAR checks.
Benin’s Olivier Verdon was sent off near the end for a foul on Gueye.
Before Gueye’s goal, his first in Egypt, Benin – who had reached this stage without winning a match in normal time – almost took the lead after a horrific mistake by keeper Alfred Gomis.
He mis-controlled a routine back-pass, the ball spinning off his boot before going narrowly wide of his own post.
But Gueye’s goal means Senegal are two wins from winning the Africa Cup of Nations for the first time.
Aliou Cisse’s team will meet minnows Madagascar or Tunisia in the semi-finals on Sunday in Cairo.
A fair result in the end – analysis
BBC Sport’s Matthew Kenyon in Cairo
In the end this was a fair result and a match Senegal will feel they should have won by more. But for quite a lot of time they were being pushed by a Benin team who were well set up, and marshalled the challenge posed by Sadio Mane and co. really well.
They have still to win a match at the Nations Cup in four tournaments – getting to this stage thanks to a penalty shoot out against Morocco – but the Squirrels know how to defend and showed enough on the break to give Senegal some concern.
In the end though, Gueye’s fine strike was enough, made by Mane – who had the ball in the net twice but couldn’t add to his three goals here. Both were ruled out for offside, with VAR making its first appearance at an Africa Cup of Nations to confirm the decisions of the officials.
Madagascar or Tunisia await Senegal in the semis. After this performance they will be feeling pretty confident.