Roger Federer earned a rematch with Juan Martin del Potro for his hometown Swiss Indoors title by beating Vasek Pospisil in a tight semifinal on Saturday.

Federer advanced to his eighth straight Basel final with a 6-3, 6-7 (3), 7-5 win against the 40th-ranked Canadian.

The sixth-ranked Federer faltered when serving for the match at 5-3 in the second set, and fell 3-1 behind in the third before rallying.

Earlier, defending champion del Potro also let the second set slip away against an unseeded opponent before beating Edouard Roger-Vasselin of France 6-4, 4-6, 6-2.

If Federer wins Sunday, he'll secure his place at the ATP Finals in London.