diff --git a/wp-includes/capabilities.php b/wp-includes/capabilities.php
index c3bb58f..94de600 100644
--- a/wp-includes/capabilities.php
+++ b/wp-includes/capabilities.php
@@ -161,9 +161,12 @@ class WP_Roles {
 	 * @return WP_Role|null WP_Role object if role is added, null if already exists.
 	 */
 	function add_role( $role, $display_name, $capabilities = array() ) {
-		if ( isset( $this->roles[$role] ) )
+		if( empty( $role ) )
 			return;
 
+		if ( isset( $this->roles[$role] ) )
+			return;
+			
 		$this->roles[$role] = array(
 			'name' => $display_name,
 			'capabilities' => $capabilities
@@ -763,6 +766,10 @@ class WP_User {
 	 * @param string $role Role name.
 	 */
 	function add_role( $role ) {
+		
+		if( empty( $role ) )
+			return;
+		
 		$this->caps[$role] = true;
 		update_user_meta( $this->ID, $this->cap_key, $this->caps );
 		$this->get_role_caps();
@@ -1396,6 +1403,9 @@ function get_role( $role ) {
 function add_role( $role, $display_name, $capabilities = array() ) {
 	global $wp_roles;
 
+	if( empty( $role ) )
+		return;
+
 	if ( ! isset( $wp_roles ) )
 		$wp_roles = new WP_Roles();
 
