Chicago Randy Wolf wanted to keep this game to himself.
Wolf pitched a four-hitter, and Jim Thome hit a two-run homer for his 1,000th and 1,001st career RBIs to lead Philadelphia past Chicago, 3-0, Wednesday night.
Wolf (11-5) struck out four and walked three, earning his sixth career shutout despite three Philadelphia errors. It was his second shutout this season -- he pitched a five-hitter May 10 against Houston.
Before the game, Wolf told Phillies pitching coach Joe Kerrigan how long he wanted to pitch.
"I told Joe I didn't want any relievers pitching today," Wolf said. "I like to pride myself on going deep in games."
Against the Cubs, Wolf threw 136 pitches and closed out the win by getting Alex Gonzalez to ground out.
Chicago's best scoring chance came in the first inning. Mark Grudzielanek doubled with one out and moved to third on an error by right fielder Bobby Abreu. Wolf then struck out Sammy Sosa, walked Moises Alou and got Eric Karros on a groundout.
"I was able to throw my curveball for strikes. I just went with what was working," Wolf said.
Only three more Chicago runners got past first base.
"When a guy like Wolf comes out today and pitches like that, you've got to tip your hat and give it to him. He made no mistakes," Sosa said.
Matt Clement (7-9) allowed just three hits in seven innings, walked five and struck out five.
Chicago's Kenny Lofton and Aramis Ramirez, obtained Tuesday night from Pittsburgh for Jose Hernandez and minor leaguers, both went 0-for-4.
Cardinals 8, Padres 4
San Diego -- Edgar Renteria had three hits and drove in two runs as St. Louis pounded out 17 hits against San Diego. Tino Martinez had three hits and scored three runs, Kerry Robinson added three hits and Scott Rolen had two RBIs for St. Louis. Every hitter in the Cardinals' starting lineup had at least one hit. Brett Tomko (6-6) beat his former team despite allowing three runs and 10 hits in five innings. Brian Lawrence (5-12) lost his third straight start, allowing five runs -- four earned -- and 10 hits in 52/3 innings.
Marlins 5, Braves 4 (12)
Atlanta -- Mike Mordecai hit his first homer in nearly two years, a 12th-inning drive that gave Florida a victory after the Marlins squandered a three-run lead in the ninth. Mark Redman allowed four hits in 72/3 innings, but closer Braden Looper couldn't hold a 4-1 lead in the ninth.
Expos 5, Mets 2
Montreal -- Javier Vazquez struck out 11 in eight innings and Ron Calloway hit a two-run single in a five-run first. Vazquez (8-6), who pitched his first complete game of the season Friday in Philadelphia, allowed five hits and two runs. Montreal ended a four-game losing streak after building a 5-0 lead against Jae Weong Seo (5-7) in the first.
Pirates 6, Reds 5
Cincinnati -- Newcomer Jose Hernandez hit a tying solo homer in the eighth inning, and Matt Stairs had another solo shot in the ninth as Pittsburgh rallied to beat Cincinnati. Randall Simon also homered as the Pirates overcame an early three-run deficit and three days of roster-gutting trades.
Astros 3, Brewers 2 (11)
Milwaukee -- Lance Berkman homered in the top of the 11th to lead Houston. Berkman homered with two outs off Dan Kolb (0-1) for his 20th home run. It's Berkman's fourth consecutive year with at least 20. Billy Wagner pitched the 11th for his 30th save in 33 chances, helping the Astros to their 12th win in the last 14 games. Mike Gallo (1-0) pitched to two batters in the 10th for the victory. The Astros tied the game at 2 in the ninth off reliever Valerio De Los Santos.
Giants 7, D'backs 1
San Francisco -- Barry Bonds hit his 645th homer, and fill-in starter Jim Brower pitched six scoreless innings as the Giants won their seventh straight. Bonds tied Willie McCovey's San Francisco Giants career record with a two-run shot.
Rockies 8, Dodgers 3
Los Angeles -- Darren Oliver won for the fifth time in six decisions and doubled home two runs. Oliver (8-6) allowed two runs and four hits over seven innings, while striking out nine and walking one.