Not sure, just glancing through the code, but in user Edit it doesn't seem like user names are required to be unique when editing? all the code to deal with uniqueness is on create.
A current user could change their username to another users user name,
Then they could edit again and then the firstordefault will likely give them access to the original user.