Geraint Thomas came through a crucial day bolstered in his bid for the Tour de France title as Primoz Roglic won the 19th stage to edge ahead of Chris Froome.

Just two rides now stand between Team Sky's Thomas and a first Grand Tour triumph after he ensured there was no major movement at the summit of the general classification standings for a second consecutive day, picking up a time bonus in second place to nudge further clear.

Teammate Egal Bernal deserved great credit for a phenomenal ride that helped Thomas maintain control of the peloton and stave off attacks in the final 40 kilometers (25 miles), with Tom Dumoulin unable to make any inroads on Friday.

Froome has work to do this weekend if he is to take a place on the podium, however, after Roglic moved into third with a brilliant finish.

Thomas' advantage of almost two minutes was in danger of being chipped away when Mikel Landa and Romain Bardet broke clear, but the duo were gradually reeled back in.

A pair of Dumoulin attacks on the final climb were matched by Thomas, with Bernal also brilliantly rescuing Froome when Roglic appeared to have shaken off the defending champion.

But the descent prompted a dash to the finish and Roglic moved again, the former ski jumper this time getting clear to take victory and leapfrog Froome in the standings.

While the top spots in the points classification were not altered on Friday, green jersey leader Peter Sagan endured another difficult day.

Sagan had fallen on Wednesday and battled on on Thursday, but he found the going tougher still on the mountains.

"Peter is having the hardest day of his cycling life ever so far," Bora-Hansgrohe sporting director Patxi Vila told French television.

Meanwhile, Roglic's efforts were enough to move ahead of Thomas into third place for the King of the Mountains.

STAGE 19 RESULTS

1. Primoz Roglic (Team LottoNL-Jumbo) 05:28.17
2. Geraint Thomas (Team Sky) +0.19
3. Romain Bardet (AG2R La Mondiale) +0.19
4. Dan Martin (UAE Team Emirates) +0.19
5. Rafal Majka (Bora-Hansgrohe) +0.19

CLASSIFICATION STANDINGS

General Classification
1. Geraint Thomas (Team Sky) 79:49.31
2. Tom Dumoulin (Team Sunweb) +2.05
3. Primoz Roglic (Team LottoNL-Jumbo) +2.24

Points Classification
1. Peter Sagan (Bora-Hansgrohe) 467
2. Alexander Kristoff (UAE Team Emirates) 196
3. Arnaud Demare (Groupama-FDJ) 183

King of the Mountains
1. Julian Alaphilippe (Quick-Step Floors) 170
2. Warren Barguil (Team Fortuneo-Samsic) 91
3. Primoz Roglic (Team LottoNL-Jumbo) 76

UP NEXT… 

A 31 km (19-mile) individual time trial is all that now stands between the riders and Sunday's final stage. A tough, hilly course travels from Saint-Pee-sur-Nivelle to Espelette.