CHICAGO — With two outs in the ninth, shortstop Brad Miller just had to make a routine throw to first base.
Instead, he committed his 15th error of the season, allowing the White Sox to force extra innings.
Alexei Ramirez singled and Tyler Flowers walked to start the rally before Ramirez advanced to third on Carlos Sanchez's flyout and scored on Saladino's hit off David Rollins (0-1).
David Robertson (6-3) struck out three in two innings for the victory as the teams split the four-game series.
The White Sox tied the game in the ninth when Miller threw away Sanchez's grounder. Trayce Thompson scored after he singled off Carson Smith and stole second.
"Obviously, I was trying to make the play and I pulled it (the throw) a little bit," Miller said. "It wasn't even close, I just pulled it. There was no rush. I just pulled it."
"It's just a bad throw," Mariners manager Lloyd McClendon said. "I don't know how you can analyze it any other way. It was a throw that pulled the first baseman off the bag, and if it's a good throw we win the ballgame."
Kyle Seager homered for the third straight game and drove in the go-ahead run on a single in the eighth for the Mariners. Austin Jackson also had three hits, including a two-run home run and a triple. Jackson hit a two-out triple and scored on Seager's single off Zach Duke in the eighth to give the Mariners the lead.
Seager credits hitting coach Edgar Martinez with his recent success at the plate.
"I was able to make some adjustments and kind of simplify some things, and get back to what's made me successful in the past," he said. "Working with Edgar has been really good."
The White Sox put two on in the bottom of the eighth, but pinch-hitter Adam LaRoche flew out to end the inning. Chicago went 12-16 in August.
Melky Cabrera had four hits and tied the game for the White Sox with a leadoff homer, his ninth, off Mayckol Guaipe in the seventh.
White Sox pitchers struck out 19 to tie a franchise record.
"The pitching has been consistent, but our hitting needs to be more consistent and be there every day," outfielder Adam Eaton said. "When we get punched like we did today, we need to punch back and that's big. We don't lay down. Consistency will be a big key in September for us."
The White Sox pulled to within one in the bottom of the first when Eaton walked, advanced on first baseman Logan Morrison's fielding error and scored on Morrison's second error when he didn't cover first base on a Jose Abreu grounder.
Jackson hit his eighth home run, a two-run shot, for a three-run Mariners lead in the second. John Hicks scored after he singled in his first major league at-bat.
Jackson extended his hitting streak to nine games and is 16 for 36 during the streak.
Edgar Olmos allowed three runs and five hits in five innings in his first career start.
Jose Quintana allowed four runs and nine hits in 4 1-3 innings in his shortest outing since April 19 when he threw four innings against Detroit.
Mariners: RHP Guaipe was recalled from Triple-A Tacoma and LHP Mike Montgomery was optioned to Tacoma before Sunday's game. McClendon said he expects Montgomery to work on his command. ... SS Ketel Marte is day-to-day after injuring his right hamstring Saturday. He will test the leg Monday, McClendon said. ... LF Franklin Gutierrez returned to the lineup Sunday after sitting out Saturday for tightness in his Achilles tendon.
Mariners: LHP Vidal Nuno (0-1, 3.21 ERA) is scheduled to start Monday to begin a three-game series against Houston. LHP Dallas Keuchel (15-6, 2.28 ERA) will start for the Astros.
White Sox: After an off day Monday, the White Sox open a three-game series against the Twins on Tuesday. LHP Chris Sale (12-7, 3.20 ERA) will start for Chicago against Twins RHP Tyler Duffey (2-1, 4.29 ERA).