Gallagher spent nine years in the minors before his first taste of major-league action with the Indians in 1987, and was traded to Seattle for Mark Huismann shortly after his big-league debut. The White Sox signed Gallagher when he was released by the Mariners after the 1987 season. He won the centerfield job in Chicago with his errorless fielding and a .303 average in 1988, and in 1989 became the first White Sox player to appear in every game since Greg Walker in 1985.
However, Gallagher fell victim to leg injuries in 1990 and was released by the Sox in August. After finishing the season with the Orioles, he was dealt to California for two minor leaguers and spent the next five years as a journeyman outfielder on several middling teams.