Made more robust update so it can't update more than once at a time