CHICAGO (AP) — Rookie Zac Gallen pitched seven innings of two-hit ball for his first major league win and Cesar Puello hit a two-run homer in the eighth inning as the Miami Marlins won their second straight game, beating the Chicago White Sox 2-0 on Wednesday night.

Puello launched his fourth homer deep to left on the first pitch from Reynaldo Lopez, making a winner out of Gallen (1-2) in his sixth start since joining the Marlins rotation on June 20.

The 23-year-old Gallen struck out nine, walked one and hit two batters in his longest outing to date.

Gallen threw 95 pitches, 68 strikes, before being replaced by Nick Anderson in the eighth. Jon Jay singled off Anderson with two outs before Jose Abreu sent a deep drive to center that Puello caught at the wall.

Sergio Romo worked around two singles in the ninth for his 17th save in 18 chances.

Lopez (5-9) allowed four hits and struck out 10 in eight innings, matching the longest outing of his career. The right-hander walked one and hit one batter. Only one Miami player advanced as far as second base on Lopez before Puello went deep.

Lopez retired 21 of 25 Miami batters through seven innings before hitting Harold Ramirez to lead off the eighth. After Jorge Alfaro struck out, Puello connected.

Gallen was in trouble in the third when he hit Adam Engel and Abreu with pitches and gave up a single to Leury Garcia, loading the bases with two outs for the White Sox. Yoan Moncada flew out to center on a 3-0 pitch to end the threat.

Ryan Goins lined a double to the wall in left to lead off the seventh, but Gallen struck out James McCann and A.J. Reed before his final hitter, Yolmer Sanchez, grounded out.

NICE CATCH

3B Moncada made a lunging stab on Starlin Castro’s smash down the line for the second out in the seventh inning.

MOVING UP

The White Sox promoted Nick Hostetler, the team’s director of amateur scouting, to special assistant to general manager Rick Hahn. Hostetler will focus on major league scouting.

TRAINER’S ROOM

Marlins: Rojas was back in the starting lineup at shortstop for the first time since leaving Saturday’s game against the Dodgers in Los Angeles with a right shoulder strain.

White Sox: SS Tim Anderson (right high ankle sprain) was scheduled to begin a rehab assignment at Triple-A Charlotte on Wednesday in the DH slot. There’s still no timetable for his return, but manager Rick Renertia hopes “it won’t be an extended rehab.” … OF Eloy Jimenez (right ulnar nerve contusion) hit off a tee and played catch to 90 feet on Wednesday. Taking batting practice will be a next step.

UP NEXT

Marlins: Following an off-day Thursday, RHP Sandy Alcantara (4-9, 4.25) faces Arizona ace RHP Zack Greinke (10-4, 2.93) on Friday in Miami.

White Sox: All-Star RHP Lucas Giolito (11-4, 3.12) takes the mound against Minnesota RHP Jose Berrios (8-5, 2.96) on Thursday in the opener of a four-game series. Gioloto hasn’t won since June 30 and is 0-2 with a no-decision in his last three starts. Berrios is 0-3 with four no-decisions in his last seven outings, despite a 2.62 ERA during the span.

Copyright 2019 The Associated Press. All Rights Reserved. This material may not be published, broadcast, rewritten or redistributed.