Did we ever check whether this does the swap or not?  If it does, can't we do it in one statement?