TORONTO (AP) -- Josh Donaldson delivered another big homer. This time it wasn't enough for the Blue Jays.
Adam LaRoche singled in the go-ahead run in the 10th inning and the White Sox survived their second blown save in two games to beat the Blue Jays 5-3 on Wednesday, snapping Toronto's season-best winning streak at three games.
Chicago's David Robertson, who blew a save when Donaldson hit a three-run, walkoff homer Tuesday, got burned again when Donaldson tied it at 3 with a solo homer into the second deck in the ninth.
"We kept pushing and gave ourselves a chance to win," Donaldson said. "Obviously they ended up scoring a few more runs in the end."
Robertson said he was hoping for redemption in his second meeting with Donaldson, but didn't get it.
"He's owned me the last two days," Robertson said. "It stung, it really did."
The White Sox stung the Blue Jays back in the 10th. Jose Abreu tripled off Roberto Osuna (1-1) and scored on LaRoche's single. Two outs later, Gordon Beckham's double made it 5-3.
It was the first time Osuna had allowed a run since April 27 at Boston, ending a streak of 11 scoreless outings.
"Nobody goes unscathed in this business," manager John Gibbons said.
Robertson (4-1) allowed a single and a walk in the bottom half but got Danny Valencia to ground into a fielder's choice for the final out.
"We definitely needed a win," Robertson said. "We hadn't had one in a while, so it was nice."
Abreu finished with three hits and two RBIs as Chicago won for the second time in nine games. The White Sox avoided what would have been their first sweep in Toronto since 2009.
Donaldson's fourth homer in three games denied Chicago's Jeff Samardzija his third straight win. Samardzija allowed one unearned run and eight hits in seven innings.
Originally scheduled as an evening start, the game was moved to the afternoon because the White Sox are playing a doubleheader in Baltimore Thursday, making up games from April 27 and 28 that were postponed by protests and civil unrest in the city.
Attendance was 15,463.
Chicago opened the scoring in the third. With two outs and men at first and second, Abreu lifted a fly ball to shallow right that Ezequiel Carrera lost in the sun. The ball ticked off Carrera's glove and dropped for a two-run double.
"If the ball goes into the sun, it doesn't matter if you have glasses on," a sympathetic Donaldson said. "You can have whatever you want, it's pretty much impossible."
J.B. Shuck made it 3-0 with a two-out RBI single in the sixth.
Toronto got its first run on Donaldson's sacrifice fly in the seventh, then cut it to 3-2 on pinch-hitter Justin Smoak's RBI single off Zach Putnam in the eighth. Zach Duke came on and got pinch-hitter Valencia for the final out of the eighth, stranding runners at the corners.
Toronto's Russell Martin started at catcher but moved to second base in the ninth, just the second time in his career he's played there. The only other time he did it was Aug. 20, 2011, with the New York Yankees. Martin handled one chance, flipping to SS Jose Reyes for a force out at second. Martin got the call because Steve Tolleson (groin) was unavailable.
BIG HURT'S BIRTHDAY
Former White Sox and Blue Jays slugger Frank Thomas turned 47 on Wednesday.
White Sox: OF Avisail Garcia (right knee) missed his second straight game.
Blue Jays: 2B Devon Travis (left shoulder) took groundballs before the game and hopes to start swinging again soon. ... C Dioner Navarro (left hamstring) went 0 for 1 with two walks and a sacrifice fly in his second rehab game at Triple-A Buffalo.
White Sox: LHP Chris Sale (3-2, 4.21) will pitch the opening game of Thursday's doubleheader at Baltimore, with RHP Chris Beck coming up from Triple-A Charlotte to make his major league debut in the second game. Beck is 3-2 with a 3.30 ERA in eight starts at Triple-A. RHP Tyler Wilson (1-0, 4.50) will start Game 1 for Baltimore and RHP Mike Wright (1-0, 0.00) starts Game 2.
Blue Jays: Toronto is off Thursday before beginning a three-game series at Minnesota on Friday. LHP Mark Buehrle (5-4, 5.13) faces RHP Trevor May (3-3, 4.95) in the opener. Buehrle has lost his past two starts.