ATLANTA -- Giants manager Felipe Alou had no choice but to use Mike Stanton in the seventh inning.
Stanton, the fifth San Francisco pitcher in the inning, struck out Adam LaRoche with the bases loaded to end the Atlanta Braves' comeback and secure the Giants' 8-6 win Thursday night.
Alou wanted to save Stanton, a left-hander, for the eighth inning. Instead he called on him for the key out an inning earlier.
"There's always one guy who is going to stop the bleeding," Alou said. "Sometimes the guy is the first one you bring in. Sometimes it's with the (fifth) move."
Matt Morris won on the road for the first time in six tries, ending a six-game, home-winning streak for John Smoltz.
Mark Sweeney hit a two-run single in a three-run sixth that knocked out Smoltz (12-7), who gave up a season-high seven runs on six hits in five-plus innings. He was 6-0 with a 2.11 ERA in his previous six home starts since a June 7 loss to Washington.
"I just never got a feel for anything," Smoltz said. "I didn't feel good. I didn't throw good. Nothing. There wasn't anything I could think of. Not one thing that's positive."
Morris (10-11) had been 0-2 in five road starts since a July 2 victory at San Diego. He gave up five runs and six hits in 6 1/3 innings.
"I saw him losing it," said Alou of Morris' effort in the seventh inning.
"I definitely got sloppy in the seventh," Morris said. "I definitely wasn't pulling off the ball, and left some breaking balls over the plate."
Armando Benitez pitched the ninth for his 17th save in 25 chances, allowing an RBI single to Jeff Francoeur.
San Francisco trails NL West-leading Los Angeles by 5½ games and San Diego, the NL wild-card leader, by 2½ games.
"We're in a pretty good situation," Stanton said. "Obviously, tonight was a big one after losing the first two here."
Atlanta, which entered with a four-game winning streak, dropped 4½ games behind the Padres.
Barry Bonds, who homered twice in Tuesday's series opener, was 2-for-3 with a walk and two runs scored. In the second inning, Bonds hit a deep fly that was caught by Andruw Jones on the warning track in center. He walked and scored in the sixth inning.
Eliezer Alfonzo's two-run double put the Giants ahead in the second after a pair of walks, but Edgar Renteria tripled in the third and scored on Chipper Jones's grounder. Steve Finley's RBI groundout gave the Giants a 3-1 lead in the fourth.
Ray Durham hit an RBI double in the sixth, Sweeney's single chased Smoltz, and Randy Winn's run-scoring single off Ken Ray made it 7-1.
Atlanta closed with a four-run seventh. Marcus Giles hit a sacrifice fly, and Renteria finished Morris with an RBI single. Andruw Jones doubled in a run against Kevin Correia, and Vinnie Chulk hit Francoeur with a pitch with the bases loaded.
Stanton then came in and struck out LaRoche.
"I was trying to do whatever I could to not have him pitch in the seventh inning," Alou said. "But he had to come in and get the out."
Said Stanton: "You've got to do what you've got to do, especially when you've lost two. We needed that one."
Todd Linden homered in the ninth against Wayne Franklin.
- Renteria's triple was his second of the season.
- Bonds made his first error since July 1, 2004, at the Los Angeles Dodgers. It ended an errorless streak of 182 games for the left fielder.
- Durham left in the seventh inning with a slightly strained lower back after reaching on Giles' error at second. Pinch-runner Tomas De La Rosa replaced Durham.
- The Braves announced after the game Franklin would not travel with the team to Philadelphia due to a back problem.