Berlin - Title-holder Tommy Haas was made to work before defeating Italian Andreas Seppi 6-3, 3-6, 6-3 on Friday to qualify for the Munich ATP tournament semi-finals.
The 36-year-old second seed spent almost two hours on court before finally seeing off the world number 33 in their quarter-final tie on the German clay.
The world number 16 will next face Slovakia's Martin Klizan, who despatched Uzbekistan's Denis Istomin 7-6 (7/5), 1-6, 6-1.
"I'm delighted to have won the key points in the important moments," said Haas, who was playing only his second match since a six-week break due to a shoulder injury.
Haas produced a brilliant sequence of backhand, forehand and then winning volley to earn the decisive break in the first set before his form deserted him in the second as his unforced error count crept up.
But after an exchange of breaks, Haas broke for the fourth time in the match to lead 5-3 in the deciding set and then sealed the win with his first match-point.
The native of Hamburg admitted afterwards, though, that his shoulder was still causing him problems.
"It will be another difficult match against Klizan who is feeling confident after winning six matches here," said Haas, a former world number two.
His only previous clash with Klizan, who came though qualifying in Munich, was a two-set victory in Hamburg in 2012.
Results from the fifth day of the ATP Munich Open on Friday (x denotes seeding):
Fabio Fognini (ITA x1) bt Thomaz Belluci (BRA) 6-2, 6-2
Jan-Lennard Struff (GER) bt Ricardas Berankis (LTU) 4-6, 6-3, 6-4
Martin Klizan (SVK) bt Denis Istomin (UZB) 7-6 (7/3), 1-6, 6-1
Tommy Haas (GER x2) bt Andreas Seppi (ITA x7) 6-3, 3-6, 6-3