Top seed Roger Federer powered into the French Open semifinals on Thursday, but he was given a scare early on by Chile's Fernando Gonzalez before winning through 2-6, 6-2, 6-3, 6-4.
Federer will play the winner of the day's other quarterfinal between David Ferrer of Spain and Gael Monfils of France on Friday for a place in Sunday's final.
Meanwhile, Russia's Dinara Safina pulled off a second successive miracle comeback to reach her first career Grand Slam semifinal on Wednesday. In a virtual carbon copy of her stunning fourth round win over top seed Maria Sharapova, Safina came back from a set and 2-5 down, and saved a match point, to beat compatriot Elena Dementieva 4-6, 7-6 (7/5), 6-0.
The 13th seed ran away with 11 of the last 12 games of an enthralling quarterfinal and will now face another Russian Svetlana Kuznetsova, who beat Estonian Kaia Kanepi 7-5, 6-2 victory, for a place in Saturday's final.
True to form, the 27-year-old Gonzalez came out with all guns blazing and broke Federer's serve in the opening game. Playing out on the Suzanne Lenglen No.2 showcourt to allow home hope Monfils to play on the Centre Court, Federer broke back three games later hitting a marvellous forehand drive past the South American on break point.
Gonzalez though run off four games in a row to take the first set in just 24 minutes through a mixture of his own explosive shot-making and Federer's uncustomary mistakes. The two had met 11 times previously since 2004 with Gonzalez winning just once - in their last encounter at the Masters Series finals in Shanghai last November in a group game that had little significance.
They also met more importantly in last year's Australian Open final when Federer won in straight sets. Having dropped his serve three times in four tries in the first set, almost unheard of for the world No.1, Federer looked shaky again as he was taken to deuce at the start of the second set.
He warded off the danger though with a backhand winner down the line and a smash at the net on the back of a powerful first serve. Federer was 0-40 up on Gonzalez' following service game but failed to convert any of his three break points and the Chilean duly levelled at 1-1.
It was an identical scenario two games later and this time Federer nailed the break at the first time of asking to lead 3-1.