World number one Rafael Nadal beat Grigor Dimitrov to register his 15th consecutive win and reach the semi-finals of the Shanghai Masters.
The Spaniard won 6-4 6-7 (4-7) 6-4 in two hours and 35 minutes.
Nadal, who has never won the title in Shanghai, will face fourth seed Marin Cilic in the last four.
Elsewhere, sixteenth seed Juan Martin del Potro overcame an injury scare to beat Serbia’s Victor Troicki 4-6 6-1 6-4.
Briton Jamie Murray and Brazil’s Bruno Soares reached the doubles semi-finals with a 6-1 7-6 (8-6) victory over Raven Klaasen and Rajeev Ram.
The victory ensured that the pair, who have won two Grand Slams and six titles together, qualified for the ATP World Tour Finals in London next month.
Top seed Nadal is chasing a tour-leading seventh title this season, and beat Bulgaria’s Dimitrov for the second time in a week following his semi-final victory at the China Open.
The Spaniard, 31, breezed through the first set but was unable to break Dimitrov in the second, and the Bulgarian was strong in the tie-break to force a deciding set.
Dimitrov, ranked eighth in the world, had break point early in the third set, but Nadal saved it with a backhand volley before winning three consecutive games.
World number five Cilic secured his place in the semi-finals with a routine victory over Spain’s Albert Ramos-Vinolas.
The Croat, who has yet to drop a set in this year’s tournament, served 10 aces as he registered a 6-3 6-4 win.
Del Potro puts wrist worry behind him
There was a worry for Del Potro midway through the third set when he slipped backwards and appeared to jar his left wrist.
The Argentine has had three operations on his wrist, which forced him to miss 11 months of tennis, and at first appeared unable to hold his racquet properly.
However, he recovered to take Troicki to deuce – courtesy of two big forehands – and ultimately break his serve, before holding to love in the next game.
Del Potro was seen by the physio twice but continued to play, and hit a series of delicate backhands as he went on to win the match.
He will next play either Roger Federer, who he beat in the US Open quarter-finals last month, or France’s Richard Gasquet.