Greg Rusedski overcame Goran Ivanisevic 6-2 0-6 6-3 to advance to the semi-finals of the Heineken Open in Auckland.
His win ended a seven-year, nine-match losing streak against the Wimbledon champion.
"If I play like this at the Australian Open I'll be going home pretty quick," said Ivanisevic, who struggled with a shoulder injury.
It was the second match in a day for Rusedski, who completed a 5-7 7-5 6-4 win over Michael Tabara in a rain-delayed second round contest. He was down a set but up a break in the second set when the match resumed.
"After I won the first set it became difficult mentally," Rusedski said, who last beat Ivanisevic in 1994.
"After dropping the second set to love I knew I had to get back into business right away.
"After nine losses you start to get a complex your not going to beat this guy."
Ivanisevic said he struggled with his serve as he had during his three-set, second round win over Mikhael Youzhny.
"He (Rusedski) is not the best returner in the game, but he was returning my serve pretty easy," said Ivanisevic, adding that he'd need constant massage and pain killers to loosen up his injured shoulder before the Australian Open.
The big-serving Croat said his injury was similar to that suffered by Pat Rafter, a torn rotator cuff.
"It's a tear, plus my nerve is jammed," he said. "Every time I lift my arm it's jamming the nerve.
"I don't have a problem with the pain so much, but I lose the power in my arm. My serve was not going anywhere because my arm was very sore, very heavy."
Jiri Novak progressed to the semi-finals with a 6-1 6-1 win over Felix Mantilla.