fix change location bug