This page will display information about bugs or issues that I have come across while coding for Wordpress. Any Issues I discover will be listed here along with solutions if found.
There seems to be an error inside the remove_user method contained in the WP_User class.
The code is checking for the existence of the specified role using
The problem is that $this->roles returns an index array with the roles as values. The code above would require a multidimensional array with the role names as the keys, not the values.
To solve this, I created a custom class that extends the WP_User Class and overrides the remove_role method.
My new method does an in_array check for the existence of the role. All of the existing WP_User functionality remains intact, therefore you can use this new class in it's place.
Download the plugin here: Downlaod WP_User_fix.