MIAMI — Tim Hudson pitched seven innings, Jason Heyward drove in two runs, and the Atlanta Braves beat the Miami Marlins, 4-3, on Tuesday night.
Martin Prado and Freddie Freeman both drove in a run for the Braves, who snapped a three-game losing streak.
Jose Reyes homered and drove in two runs for the Marlins as he extended his hitting streak to 12 games.
After issuing the home run to Reyes in the second inning, Hudson (9-4) retired 16 straight batters before he was relieved by Eric O'Flaherty.
Hudson allowed five hits and three runs as he threw 54 of 80 pitches for strikes. He improved to 13-4 in 24 starts against the Marlins.
Heyward broke a 3-3 tie in the seventh inning with an RBI single off Wade LeBlanc (1-1) that scored Prado, who tripled to lead off the inning.
O'Flaherty pitched a scoreless eighth and Craig Kimbrel pitched the ninth for his 29th save in 30 chances.
Heyward's sacrifice fly scored the Braves' first run.
Hanley Ramirez tied the game with an RBI single as Justin Ruggiano was thrown out on a close play at home by Michael Bourn to end the inning.
Reyes' two-run homer down the right-field line gave the Marlins a 3-1 lead. It was his sixth home run of the season.
Mark Buehrle issued a bases-loaded walk to Freeman to pull the Braves within a run, 3-2. Prado's sacrifice fly tied it.
Buehrle walked a season-high four batters. He allowed three runs — two earned — and five hits in five innings.
NOTES: Braves 3B Chipper Jones is hitting .369 (31-for-84) in his last 23 games. ... Marlins manager Ozzie Guillen said LeBlanc would step into the starting rotation with the departure of Anibal Sanchez and will make his first start of the season Saturday against San Diego. Emilio Bonifacio will be the everyday second baseman with Omar Infante in Detroit. ... Braves RHP Tommy Hanson (10-5, 4.50 ERA) will start the series finale today against RHP Ricky Nolasco (8-8, 4.55 ERA). Hanson is 5-2 with a 2.56 ERA in nine starts against the Marlins.