Crystal Palace all but confirmed their Premier League status with a 1-0 win over Newcastle United at St. James' Park.
Luka Milivojevic's 80th-minute penalty was enough to separate the two teams in a tight and tetchy game on a dreary day on Tyneside.
The visitors moved up to 12th, eleven points clear of the relegation zone, as they ended Newcastle's five-game winning run at home.
Story of the match
Both sides had thought they'd taken the lead in the goalless first half, only to be denied by the linesman's flag.
Salomon Rondon was clearly offside as the ball fell for him to tap it in inside 15 minutes, while James Tomkins was almost back in his own half celebrating when he realised his finish, direct from a corner, was chalked off shortly before the stroke of half-time. James McArthur was deemed to be interfering from an offside position.
Newcastle had the lion's share of chances in the first half as the aerial threat of Rondon caused the Palace backline plenty of problems, but the hosts were profligate with their finishing and wasteful with a number of good set piece opportunities.
The visitors could have gone ahead themselves as they showed some good interplay between Wilfried Zaha, Jeffrey Schlupp and Michy Batshuayi to carve open half-chances.
There was a long stoppage on the hour mark as Florian Lejeune looked to suffer a knee injury, forcing him to be stretchered off. At the same moment, Roy Hodgson looked to take the initiative by throwing on Christian Benteke for Batshuayi.
But the out of sorts Belgian continued his sorry form in front of goal when he slipped, getting the ball caught between his feet as the best opportunity of the second half fell to him from a pinpoint cross from Andros Townsend.
It looked as though the game was drifting to the second goalless draw between the two teams this season when DeAndre Yedlin took down Zaha inside the box in the 79th minute - and there was no question that penalty specialist Milivojevic would dispatch it.
Rafael Benitez's side showed little to get back into the game and couldn't take advantage of seven extra minutes of injury time.
Florian Lejeune has no luck
The Frenchman looked in serious discomfort when, on the hour mark, it appeared that his knee buckled after an attempted challenge on Andros Townsend.
He's often been one of Newcastle's better players and slotted comfortably into the back line whenever he's available, but it could be another long injury layoff having already missed the first half of this campaign.
Luckily Newcastle are well stocked with other options, with Federico Fernandez, Fabian Schar and Jamaal Lascelles dependable in his absence.
A familiar story for Palace. Zaha wins a penalty, Milivojevic scores it.
Newcastle's back three had largely done a good job in containing Zaha but they looked in serious trouble when, after 79 minutes, he was time and space to run into the Newcastle penalty area.
They had already ridden their luck as he skipped past a rash challenge from Schar on the edge of the box, but a couple of seconds later there was no questioning the decision
When Milivojevic stepped up, you know what was going to happen next. His 10th (TENTH) penalty of the season.