I have recently written a custom module that among other things edits a user field (2 actually) during execution. If any user field is changed, after logging out, the user can no longer log in and has to reset his/her password. It this usual behaviour (am I missing something key to drupal permissions?)
I can send code, but it is all using user_load ---- modify array -- and then user_set(array) to save the changes