CHICAGO, JULY 6 -- Lance Johnson broke a tie with a two-run triple in the seventh inning, lifting the Chicago White Sox to a 4-2 victory over the Baltimore Orioles tonight at Comiskey Park.

"That's what we needed, someone to come through with a hit," said Johnson, who celebrated his 27th birthday today. "I was lucky it was me."

Johnson's hit made a winner of Melido Perez (7-7), who pitched seven innings and gave up five hits while striking out eight. Perez won for the first time since June 11 and raised his career record against the Orioles to 4-0.

"The last couple of games I was upset because I was going hard but I wasn't getting any wins," Perez said. "I was missing the corner too much. Tonight I was working with my fastball on hitting the corners for the first three innings. Then I went more to the split-finger."

Barry Jones replaced Perez to start the eighth and pitched one perfect inning. Bobby Thigpen finished up for his major league leading 27th save, but not before he gave the fans a scare by giving up a pair of two-out base hits.

"I was a little too overexcited," Thigpen said. "Pudge {catcher Carlton Fisk} came out and told me to relax. But when the crowd gets going it's very hard to keep your cool."

Chicago won for the 11th time in 14 games and moved into first place in the AL West by percentage points. The White Sox beat Baltimore for the sixth time in six meetings this season.

"This is the type of game we've been winning all year," White Sox Manager Jeff Torborg said. "The starter does a good job, we scratch out some runs and then Barry and Bobby come on to close it out. That's our game."

Pete Harnisch (7-5) left after Johnson's triple. He gave up four runs on nine hits and one walk. He struck out four.

Baltimore has lost four of its last five games.

With the game tied at 2 in the seventh, Scott Fletcher drew a one-out walk and moved to second on Ozzie Guillen's single. Johnson followed with a ground ball just inside first base that rolled into the right field corner.

Jeff Ballard relieved and struck out Robin Ventura, then walked Fisk intentionally. Curt Schilling replaced Ballard and fanned pinch hitter Dave Gallagher to end the inning.

"There was nothing wrong with the effort {Harnisch} gave us tonight," said Orioles Manager Frank Robinson. "The base hits will happen. I don't care how they hit them, they will count. I was more upset with the walk to start the {seventh} inning.

"But {the White Sox} are playing good baseball right now. They're doing what they need to do to win."

The Orioles scored a run in the first after Steve Finley led off with a double that extended his hitting streak to a career-high seven games. Finley moved to third on Joe Orsulak's groundout and scored when third baseman Ventura threw low to first on Mickey Tettleton's grounder.

The White Sox took a 2-1 lead with a two-out rally in the first. Fisk singled and moved to second on Harnisch's balk. Dan Pasqua's double scored Fisk and Ron Kittle followed with a single to drive in Pasqua.

Randy Milligan tied the game in the third with an upper-deck shot to left, his 14th home run of the season.