Paris:Top seed Roger Federer powered into the French Open semi-finals 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 quarter-final between David Ferrer of Spain and Gael Monfils of France on Friday for a place in Sunday'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.
The Federer machine was cranking up and the Swiss maestro broke the South American's serve to love again four games later to take the set 6-2.
It was more of the same in the third set with Federer dominating the exchanges and jumping out into a 3-0 lead having won eight of the previous nine games.
That one break of serve was all he needed to go two sets to one up with Gonzalez being made to work extra hard by Federer just to stay in the rallies.
The Chilean, unbeaten in 16 claycourt matches this year, needed massage treatment to his right shoulder at the changeover. He was near breaking point and it was almost with a sense of inevitability when Federer broke his serve again to love in the third game of the fourth set.
The top seed stepped on the accelerator and powered away into the last four.
Federer's win put him into a record 16th straight Grand Slam semi-final appearance and left him just one match away from playing Rafael Nadal in the French Open final for the third consecutive year, having lost the last two.
He needs the claycourt title to complete his sweep of all four Grand Slam tournaments having won a total of 12 at Wimbledon and the US and Australian Opens.