Austria's Jurgen Melzer produced a dramatic fightback from two sets down to send third seed Novak Djokovic spinning out of the French Open.
Melzer, playing in the quarter-finals of a grand slam for the first time, looked down and out before an incredible revival earned him a 3-6 2-6 6-2 7-6 6-4 victory.
The 22nd seed had never clawed back a two-set deficit before but he suddenly burst into life and eventually wore down Djokovic in a match lasting four hours and 15 minutes to earn the dubious prize of a semi-final against Rafael Nadal.
Djokovic was too consistent in the first two sets but Melzer lifted his game brilliantly to take the third set.
The Austrian snatched the fourth on a tiebreak and broke once in the ninth game of the decider before serving out for victory on his third match point.