Comment 23 for bug 533870

Revision history for this message
Milan Bouchet-Valat (nalimilan) wrote : Re: Changing the long name in users-admin to the same name results in an error

Yeah, by "reproduce the problem" I meant starting users-admin. But don't worry, I think I've found the problem. The UID we found out thanks to your debugging was 140733193389032, whose hexadecimal representation is 0x7FFF000003E8: if you only keep the lowest 8 bytes, you get 0x3E8, which is 1000 in decimal. So that means the code is wrong and doesn't work on 64 bits CPUs: garbage appears on the second half of the number.

Looking at the code in liboobs, I could check that this part is the only one which doesn't copy the UID/GID to a guint32 before passing it to dbus_message_append_args(). Instead, it passes directly an uid_t integer, which is likely to be only 32 bits on every architecture. These games with integer types are quite complex!

Much thanks for your help, I'll try to check on a 64 bits machine that this fix actually works, and push it before we release the next version. Please continue testing the gnome-system-tools in Lucid to get them as bug-free as we can!