Gabriel Jesus came off the bench to secure Manchester City a 1-0 Premier League victory at Leicester City after yet another penalty miss by Pep Guardiola's side on Saturday.
It looked like being a frustrating day for second-placed City when Kasper Schmeichel saved Sergio Aguero's spot kick just past the hour but Jesus spared his blushes late on.
The Brazilian was fractionally onside as he collected a pass by former Leicester title winner Riyad Mahrez and he showed great composure to power a shot past Schmeichel.
Victory lifted City seven points above Leicester in the battle for runners-up spot behind runaway leaders Liverpool who remain 19 points clear before their clash with lowly West Ham United at Anfield on Monday.
While Liverpool's first title for 30 years is a formality, champions City showed that they will not take their foot off the gas as they edged an absorbing game that surprisingly required 80 minutes for the deadlock to be broken.
Premier League top scorer Jamie Vardy rattled the post for Leicester early on and the home side were a constant threat on the counter-attack. At the other end Schmeichel made great saves from Kevin de Bruyne, Aguero and Mahrez while Aguero also had a goal ruled out for offside. Danish keeper Schmeichel's block from Aguero's penalty means Manchester City have now failed to score five of their last seven in all competitions.
"We have missed four penalties in a row but maybe we will shoot a penalty when we need it to win something," Guardiola said. "The keepers are good too."
Big weeek for Man City
Victory was the ideal boost for City ahead of a week in which they face Real Madrid in the Champions League followed by the League Cup final against Aston Villa next Sunday.
"The most important thing is that we won today even if we miss the penalty," said Mahrez, who was superb on his return to the Midlands. "Today we showed a great reaction.
"It was a perfect game to prepare (for Real Madrid), a tough game, we are ready.
"As is the norm, VAR was again a talking point with Leicester not being awarded a penalty in the first half after De Bruyne appeared to block a James Maddison free kick with his arm. When Dennis Praet blocked Ilkay Gundogan's fierce shot with his arm on the hour, City's players appealed en masse and VAR correctly awarded the penalty, although it left Leicester boss Brendan Rodgers bemused."(De Bruyne's) handball was so clear," Rodgers said.
"The ball was going towards the corner and De Bruyne stopped it. It was a clear penalty. Theirs was a penalty. That's the rule but you hope you get it for you too."Leicester felt vindicated when Aguero went for power rather than placement and Schmeichel saved with his legs.But City were relentless.
Moments later Schmeichel was again called into action to thwart Aguero from a tight angle.With Leicester tiring, Mahrez surged forward in the 80th minute before a perfectly-timed pass sent Jesus clear to score his fourth goal in five Premier League games against Leicester.
"It was a nice victory against a difficult opponent," said Guardiola, who confirmed that Raheem Sterling might be fit to return against Real Madrid in midweek.