I can't remember if this is correct for validation or not; I try very hard to avoid changing values when using validation (and in fact only ever use validation to drive GUI hints, not actual failure).