For fields which are not marked as required, uniqueness should only be checked when the field is populated.
I think this was intended by this line (in unique_profile_field_validate())
if (isset($form_state['values'][$ufids_name])) {
but the line actually needs to be
if (isset($form_state['values'][$ufids_name]) && !empty($form_state['values'][$ufids_name])) {
Comments
Comment #1
v-a-1 commentedThanks James.
Your observation is correct.
Will incorporate this in a new release.
Comment #2
v-a-1 commentedHave updated in 6.x-1.1 release.
Thanks again for pointing out the correction.
Comment #2.0
v-a-1 commentedUpdated issue summary.