diff --git masquerade.module masquerade.module
index 4efe0ea..75ebaae 100644
--- masquerade.module
+++ masquerade.module
@@ -640,6 +640,12 @@ function masquerade_switch_user($uid) {
 
   $new_user = user_load(array('uid' => $uid));
 
+  // Check to see if user is blocked
+  if (!empty($new_user->uid) && empty($new_user->status)) {
+    drupal_set_message(t('User %user most be active in order to masquerade as.', array('%user' => $new_user->name)), 'error');
+    watchdog('masquerade', 'User %user most be active in order to masquerade as.', array('%user' => $new_user->name), WATCHDOG_ERROR);
+    return FALSE;
+  }
+
   $roles = array_keys(array_filter(variable_get('masquerade_admin_roles', array())));
   $perm = $uid == 1 || array_intersect(array_keys($new_user->roles), $roles) ?
     'masquerade as admin' :
