Updated

Gavin Floyd allowed four hits over 7 2-3 innings and Carlos Quentin hit a three-run homer in the fifth to give the Chicago White Sox a 3-0 victory over the Cleveland Indians on Friday night.

Floyd (8-9) earned his second straight win after going 0-4 over six previous starts. The right-hander struck out five and didn't issue a walk for the first time in 19 starts.

Quentin's 20th homer came off Carlos Carrasco (8-8).

Sergio Santos, the second Chicago reliever, struck out Matt LaPorta on a pitch in the dirt with a runner on second in the ninth for his 19th save in 22 chances to complete the five-hitter.

Matt Thornton replaced Floyd with runners on second and third in the eighth. Pinch-hitter Orlando Cabrera drove his first pitch toward the gap in left-center, but left fielder Juan Pierre made a running catch near the warning track to end Cleveland's best scoring threat.

Thornton gave up a single to Michael Brantley in the ninth, then struck out Asdrubal Cabrera and got Travis Hafner to line out to center before yielding to Santos.

Chicago improved to 12-20 against AL Central opponents by winning for just the sixth time in its last 15 games overall. The second-place Indians have lost five of seven and are 3½ games ahead of the White Sox.

Carrasco worked out of several early jams, stranding two runners in both the first and second innings and leaving the bases loaded in the third.

Quentin ended that in the fifth. Paul Konerko and Adam Dunn reached on one-out singles before Quentin belted a 2-1 pitch into the bleachers in left for the game's only runs.

Quentin is a key reason why the White Sox are 5-1 this year against Cleveland. He is batting .500 (11 for 22) with three homers and 12 RBIs in the season series.

Floyd retired the first nine Indians. Ezequiel Carrera led off the fourth with a single, but was erased on a double play that featured some fine fielding by Chicago. First baseman Konerko scooped up a sharply hit ball by Brantley at his ankles and threw to shortstop Alexi Ramirez to force Carrera. Ramirez then sidestepped the sliding runner, jumped up and threw to first, where Floyd dug out the low throw to complete the double play.

Carrasco gave up six hits and three runs over 6 1-3 innings, striking out six. After going 4-2 with a 1.90 ERA in June, the right-hander 0-4 with a 7.40 ERA in four July starts.

Notes: Rain delayed the start 47 minutes. ... Cleveland called up 2B Jason Kipnis from Triple-A Columbus and he went 0 for 2 and was hit on the knee by a pitch in his major league debut. Kipnis was the Indians' second-round draft pick in 2009. ... The Indians optioned INF Luis Valbuena to Columbus and designated for assignment minor-league INF Jared Goedert to clear roster room for Kipnis. ... Pierre went 0 for 4 with a walk, ending his 12-game hitting streak. ... Dunn went 2 for 5 with one strikeout. He was 7 for 79 (.089) with 40 strikeouts in his previous 22 games. ... Hafner played his 1,000th career game.