Cubs 8, Twins 2: Ryan Dempster tossed eight stellar innings and David DeJesus drove in three runs as visiting Chicago ended its four-game losing streak by salvaging the finale of the three-game interleague series.
Alfonso Soriano and Joe Mather each had an RBI double while Starlin Castro recorded three hits and scored three runs for the Cubs, who went 2-8 on their 10-game road trip.
Dempster (2-3) allowed only four singles and walked one while striking out six. The veteran has thrown 15 scoreless innings in winning each of his last two outings after a winless drought of 18 starts.
James Russell was unable to preserve the shutout, giving up two runs - both unearned - and three hits in the ninth.
DeJesus plated a run with a groundout in the sixth before adding a two-run double in the ninth to complete the scoring for Chicago, which had lost 20 of 24.
Soriano got the Cubs on the board in the first inning with his RBI double and Mather delivered his to cap a three-run sixth that gave Chicago a 4-0 lead. Jeff Baker lifted a sacrifice fly in the eighth and Darwin Barney hit a run-scoring single later in the inning to up the advantage to six.
Francisco Liriano (1-7) surrendered four runs and four hits over 5 2/3 innings. Liriano had yielded just one run in 12 frames over his previous two starts.
Pinch hitter Ryan Doumit and Jamey Carroll each drove in a run in the ninth for the Twins, who had their three-game winning streak snapped.
GAME NOTEBOOK: Cubs C Geovany Soto is expected to begin a rehab assignment with Triple-A Iowa on Monday. Soto, who underwent arthroscopic surgery to repair a torn meniscus in his left knee, has not played since May 16. ... Twins LF Josh Willingham went 0-for-3, ending his hitting streak at 12 games. Willingham hit a smash in the ninth inning to Chicago 3B Ian Stewart, who was unable to handle it and charged with an error. ... Minnesota has scored 125 runs over its last 23 games.