Match ends, Serbia 2, Portugal 2.
Cristiano Ronaldo stormed off the pitch at full time when he was denied a stoppage-time winner in Portugal's 2-2 draw in Serbia.
Liverpool's Diogo Jota scored two headers for the Group A favourites before Serbia fought back in their World Cup qualifier.
Aleksandar Mitrovic pulled one back before Filip Kostic slotted in.
But the visitors were furious when Ronaldo's late effort was judged not to have crossed the line.
The Juventus forward thought he had scored with his angled shot and was aghast when the officials ruled he had not. There was no goalline technology available for the match.
Portugal's all-time leading scorer was booked for protesting, and at the final whistle threw his captain's armband to the turf and stormed down the tunnel at the Rajko Mitic Stadium in Belgrade.
"There are moments which are tough to digest especially when we feel the entire nation is being punished," Ronaldo said on Instagram. "We will keep our heads up and move on to the next challenge."
Also in stoppage time, Serbia were reduced to 10 men when Nikola Milenkovic was shown a straight red for a foul on Porto's Danilo Pereira.
Mitrovic effort shortly after the break saw him become Serbia and the former Yugoslavia's all-time leading goalscorer. The Fulham forward's 39th goal moved him one clear of former Yugoslavia player Stjepan Bobek.
Portugal coach Fernando Santos also reached a milestone - 1,000 games as head coach at club and international level.
He said: "The referee apologised to me straight after the game and we now have to move on.
"It was a clear goal but there is nothing we can do now. We controlled the first half but lost our focus in the second and failed to contain Serbia as they surged forward."
- 4MilenkovicBooked at 90mins
- 22LazovicSubstituted forMaksimovicat 45'minutesBooked at 56mins
- 17KosticSubstituted forRisticat 72'minutes
- 10TadicSubstituted forDjuricicat 82'minutes
- 18VlahovicSubstituted forRadonjicat 45'minutes
- 9MitrovicBooked at 85minsSubstituted forJovicat 88'minutes
- 21Cédric Soares
- 6José FonteBooked at 54mins
- 4Rúben Dias
- 20CanceloSubstituted forTavares Mendesat 72'minutes
- 8Bruno FernandesBooked at 52minsSubstituted forAlves Palhinha Gonçalvesat 90+1'minutes
- 14OliveiraSubstituted forRenato Sanchesat 73'minutes
- 10Bernardo Silva
- 7Cristiano RonaldoBooked at 90mins
- 17JotaSubstituted forSequeiraat 85'minutes
- 1Malheiro de Sá
- 2Novo Neto
- 3Coutinho Meneses Duarte
- 5Tavares Mendes
- 9André Silva
- 11Alves Palhinha Gonçalves
- 15Ferreira Silva
- 16Renato Sanches
- 22Dantas da Silva
- Danny Makkelie
- Shots on Target
Second Half ends, Serbia 2, Portugal 2.
Cristiano Ronaldo (Portugal) is shown the yellow card.
Cristiano Ronaldo (Portugal).
(Serbia) wins a free kick in the defensive half.
Attempt blocked. Bernardo Silva (Portugal) left footed shot from the centre of the box is blocked.
Attempt blocked. Cristiano Ronaldo (Portugal) right footed shot from the right side of the box is blocked. Assisted by Nuno Mendes.
Nikola Milenkovic (Serbia) is shown the red card for violent conduct.
Foul by Bernardo Silva (Portugal).
Nikola Milenkovic (Serbia) wins a free kick in the defensive half.
Substitution, Portugal. João Palhinha replaces Bruno Fernandes.
Foul by Renato Sanches (Portugal).
Mihailo Ristic (Serbia) wins a free kick in the defensive half.
Substitution, Serbia. Luka Jovic replaces Aleksandar Mitrovic.
Substitution, Portugal. João Félix replaces Diogo Jota.
Aleksandar Mitrovic (Serbia) is shown the yellow card for a bad foul.
Bruno Fernandes (Portugal) wins a free kick in the defensive half.
Foul by Aleksandar Mitrovic (Serbia).
Substitution, Serbia. Filip Djuricic replaces Dusan Tadic.
Attempt blocked. Bruno Fernandes (Portugal) right footed shot from outside the box is blocked. Assisted by Rúben Dias.