Bristol Rovers extended their unbeaten run in League One to five matches as they came from behind to win 2-1 at Charlton.
Rovers goalkeeper James Belshaw twice denied Jesurun Rak-Sakyi and also Jack Payne as Charlton dominated the early proceedings.
The Addicks fully merited their 20th-minute lead, Ryan Inniss heading home Scott Fraser's corner.
Charlton keeper Ashley Maynard-Brewer pushed away a shot from the edge of the box by Antony Evans but it was a rare attack by the visitors in the first period.
Rovers striker John Marquis turned the contest around after his introduction in the 55th minute.
He took just six minutes to get on the scoresheet, dispossessing a dozing Inniss on the edge of his own penalty area and emphatically whipping the ball beyond Maynard-Brewer.
Marquis claimed his second of the afternoon in the 72nd minute when Inniss' pass forward was cut out and the substitute made no mistake after breaking into the right of the box to extend Charlton's winless league sequence to six matches.