diff --git a/includes/install.inc b/includes/install.inc
index 047701480b3105c1dc442f2a3cb18f1c2ffb126d..9ff1232671601231313f03092c5fe071af0ac778 100644
--- a/includes/install.inc
+++ b/includes/install.inc
@@ -733,6 +733,11 @@ function drupal_install_mkdir($file, $mask, $message = TRUE) {
  *  TRUE/FALSE whether or not we were able to fix the file's permissions.
  */
 function drupal_install_fix_file($file, $mask, $message = TRUE) {
+  // If $file does not exist, fileperms() issues a PHP warning.
+  if (!file_exists($file)) {
+    return FALSE;
+  }
+
   $mod = fileperms($file) & 0777;
   $masks = array(FILE_READABLE, FILE_WRITABLE, FILE_EXECUTABLE, FILE_NOT_READABLE, FILE_NOT_WRITABLE, FILE_NOT_EXECUTABLE);