Trace Thompson's two-out double sparked a three-run seventh inning, when the White Sox erased a 4-2 deficit and went on to beat the Boston Red Sox 5-4 Tuesday night.
Melky Cabrera added an RBI single in the seventh for Chicago, which had 15 hits.
The Chicago bullpen protected the one-run lead for the final two innings. Jake Petricka (4-3) picked up the win in relief and combined with Zach Duke and David Robertson to close it out.
Robertson pitched the ninth to earn his 26th save in 32 opportunities.
The White Sox trailed by two runs after Boston scored twice in the sixth. Pablo Sandoval snapped a 2-all tie with an RBI double before Travis Shaw extended the Red Sox lead with an RBI fielder's choice.
Boston starter Wade Miley couldn't protect it, surrendering the three runs in the seventh. Miley (10-10) allowed five runs and 13 hits in 6 2-3 innings. He struck out three and had a walk.
The Red Sox took a 2-1 lead in the third inning. Mookie Betts lined a double into the left-field corner, scoring Josh Rutledge. But a poor relay throw by White Sox shortstop Alexei Ramirez bounded away from catcher Geovany Soto and with no one covering home plate, Betts - who also scored two runs - was able to come around and score.
Thompson's RBI single in the fourth tied the game at 2.
Chicago starter Carlos Quintana worked six innings and struck out six while scattering seven hits and allowed three earned runs.
Carlos Sanchez gave the White Sox a 1-0 lead in the second inning with an RBI single that scored Ramirez, who reached on a fielder's choice.