Roger Federer ended Grigor Dimitrov's seven-match winning streak and showed the Bulgarian he has some way to go to live up to his 'Baby Federer' tag with a 6-3 7-6 (2) quarter-final victory at the Basel Open on Friday.
Third seed Federer is now two matches away from scooping a sixth title at his Swiss hometown tournament and guaranteeing his place in the season-ending ATP World Tour finals.
The eighth seed was the form player, having claimed his maiden ATP title in Stockholm on Sunday, but was unable to make the most of his chances.
Dimitrov passed up five break points in the first set while Federer clinically won both of his to take the opener in 35 minutes.
The World No 22 got his nose in front in the second set but Swiss great Federer fought back, forced a tie break and then ran away with it to set up a semi-final against rising Canadian talent Vasek Pospisil.
Failure to win the Basel crown would leave Federer in danger of missing out on the eight-man season finale after a difficult year.
He is eighth in the ATP Race standings, with next week's Paris Masters the final event where players can earn points to qualify for the London showpiece.
Top seed Juan Martin Del Potro of Argentina will face unseeded Frenchman Edouard Roger-Vasselin in the other semi-final.
Image: Switzerland's Roger Federer reacts after winning his quarter-final against Grigor Dimitrov of Bulgaria at the Swiss Indoors ATP tennis tournament in Basel on Friday
Photograph: Arnd Wiegmann/Reuters
Del Potro cruises into Basel Open quarters
'Struggling Federer won't be thinking of quitting'
Dimitrov upsets Ferrer to win maiden tour title
Tommy Haas shows no signs of slowing down as he trumps Haase
Davis Cup: Djokovic, Tipsarevic put Serbia into final