Ok, we need to clear out the old cached permissions when a user is updated. Here is the fix. Line 462 of admin/changeuser.php has this:

Code
// ---------------
// Log this action

Right before that, add this:

Code
// Delete the cached permissions so they are rebuilt
$query = "
        delete from {$config['TABLE_PREFIX']}CACHED_PERMISSIONS
        where USER_ID = ?
";
$dbh->do_placeholder_query($query,array($uid),__LINE__,__FILE__);