diff --git user.module user.module
index 90d313b..83d80b0 100644
--- user.module
+++ user.module
@@ -3420,14 +3420,13 @@ function user_preferred_language($account, $default = NULL) {
  * @return
  *  The return value from drupal_mail_system()->mail(), if ends up being called.
  */
-function _user_mail_notify($op, $account, $language = NULL) {
+function _user_mail_notify($op, $account) {
   // By default, we always notify except for canceled and blocked.
   $default_notify = ($op != 'status_canceled' && $op != 'status_blocked');
   $notify = variable_get('user_mail_' . $op . '_notify', $default_notify);
   if ($notify) {
     $params['account'] = $account;
-    $language = $language ? $language : user_preferred_language($account);
-    $mail = drupal_mail('user', $op, $account->mail, $language, $params);
+    $mail = drupal_mail('user', $op, $account->mail, user_preferred_language($account), $params);
     if ($op == 'register_pending_approval') {
       // If a user registered requiring admin approval, notify the admin, too.
       // We use the site default language for this.
diff --git user.pages.inc user.pages.inc
index 697a82d..78d9fe5 100644
--- user.pages.inc
+++ user.pages.inc
@@ -72,11 +72,9 @@ function user_pass_validate($form, &$form_state) {
 }
 
 function user_pass_submit($form, &$form_state) {
-  global $language;
-
   $account = $form_state['values']['account'];
   // Mail one time login URL and instructions using current language.
-  _user_mail_notify('password_reset', $account, $language);
+  _user_mail_notify('password_reset', $account);
   watchdog('user', 'Password reset instructions mailed to %name at %email.', array('%name' => $account->name, '%email' => $account->mail));
   drupal_set_message(t('Further instructions have been sent to your e-mail address.'));
 
