Ligue 1: Saint-Etienne 0 Rennes 0
Christophe Galtier's men went into the match seven points adrift of third-placed Lille with five games remaining and suffered frustration against a well-drilled Rennes outfit, buoyed by their midweek progression to the Coupe de France final.
After a dire first half, Saint-Etienne applied pressure after the interval but could not break the deadlock.
When Romain Hamouma did beat Rennes goalkeeper Benoit Costil with a header from Benoit Tremoulinas' cross, the goal was ruled out for offside.
The visitors held on in the closing stages, despite a succession of set-pieces from Tremoulinas causing further problems.
Rennes climb to 13th in the table, while Saint-Etienne's grip on fourth now looks vulnerable after a third successive draw.