fix incorrect source update when executing only once