Franck Ribery scored a last-minute winner at Werder Bremen to keep Bayern Munich's slim Bundesliga title hopes alive.
Naldo's 51st-minute strike had put the hosts ahead but the same player put through his own net 15 minutes from time to level things up, before Ribery had the final word.
The victory moved Bayern to within five points of Borussia Dortmund, although the leaders can wrap up the title later this evening when they host Borussia Monchengladbach.
Bremen's loss extended their winless streak to seven games and left them on 42 points.
Bayern coach Jupp Heynckes rested most of his top stars ahead of Wednesday's Champions League semi-final second leg against Real Madrid. Bastian Schweinsteiger, Luiz Gustavo and Manuel Neuer were the only starters on Saturday who played in the first leg.
The visitors had the first chance of the game but Bremen goalkeeper Tim Wiese made a superb save from Nils Petersen's header from eight yards in the 19th minute.
Bremen went close four minu...