TORONTO -- The Chicago White Sox are in position to wrap up a rotten road trip on a positive note.
Dayan Viciedo hit a three-run homer, Chris Sale pitched seven innings and the White Sox beat the Toronto Blue Jays 4-3 on Saturday, just their third victory on a season-long 11-game trip that ends Sunday.
"We've got some scrappers, we've got some fighters," Sale said. "After a road trip like this that hasn't really gone our way, to keep fighting and to keep staying in there and just going forward really says what kind of guys we've got in here."
Zack Putnam got the final four outs for his first save as Chicago won back-to-back games for the first time since winning two straight over San Francisco on June 17 and 18. It had dropped 11 of 14 before the consecutive victories.
"It was nice to be able to lock it up and get us two in a row here," Putnam said.
Held in check through the first six innings by rookie right-hander Marcus Stroman, the White Sox took the lead with a two-out rally in the seventh inning. Jose Abreu doubled, Adam Dunn walked and right-hander Dustin McGowan came on to face Viciedo, who drilled a second-deck home run on the reliever's first pitch.
"We've been going through some rough times," Viciedo said through a translator. "It's always good to come through."
McGowan (4-3) blew his second straight save opportunity, leaving Blue Jays manager John Gibbons to rue his decision.
"My thinking was, (Stroman) pitched his butt off," Gibbons said. "I don't want him to lose the game right there. That's the way it goes. But you always look back on things like that. I had a plan and it just didn't work."
Viciedo also connected in Friday's 5-4 victory and has gone deep four times in his past 15 games against the Blue Jays. The White Sox are 7-1 this season when Viciedo homers.
"Viciedo just flat out won the game for us," Sale said.
Viciedo's drive helped Chicago overcome a two-run homer by Toronto's Darin Mastroianni in the fourth. Recalled from Triple-A Buffalo before the game, Mastroianni followed a two-out walk with a drive to center off Sale for his first hit of the season. The homer snapped a 0-for-14 slump.
The White Sox extended their lead with a run in the eighth. Singles by Adam Eaton and Gordon Beckham chased McGowan, who was replaced by Aaron Loup. Alexei Ramirez, who had started all 81 games this season but was not in Saturday's lineup, made it 4-2 with a pinch-hit RBI single.
Coming off a no-decision in Baltimore in which he gave up a career-worst 11 hits, Sale (7-1) was more effective against the Blue Jays. The left-hander allowed two runs and four hits, walked a season-high five and struck out six.
"I felt like I had good stuff," Sale said, "I just didn't know where it was going for the most part."
"You can't waste those opportunities," manager Robin Ventura said
Pinch-hitter Anthony Gose doubled off Putnam to begin the ninth and scored on Munenori Kawasaki's single. Putnam got Jose Reyes to ground into a fielder's choice and retired Melky Cabrera on a fly ball, then wrapped up his first save by getting Edwin Encarnacion to ground into a fielder's choice.
Stroman allowed two runs and two hits in 6 2-3 innings. He walked two and struck out six.
Eaton, who left Thursday's game in the first inning with leg cramps and sat out Friday, returned to Chicago's lineup. ... The Blue Jays optioned LHP Rob Rasmussen to Triple-A to make room for Mastroianni. ... White Sox LHP Jose Quintana (4-7) faces Blue Jays LHP Mark Buehrle (10-4) in Sunday's series finale.