[geolocation] Fixes for Bugs 1022630, 1027489, and 1022637

And of course this could use some separate tests after moving.