diff --git a/core/modules/file/file.module b/core/modules/file/file.module index 9438f4ac38ae80a69d1232864de54193bd6f9621..82e9f9654b8cfb8385a22c03b5f75a90569ba9ba 100644 --- a/core/modules/file/file.module +++ b/core/modules/file/file.module @@ -734,6 +734,21 @@ function file_save_upload($form_field_name, $validators = array(), $destination $files[$i] = FALSE; continue; + case UPLOAD_ERR_NO_TMP_DIR: + drupal_set_message(t('The file %file could not be saved because server is missing a temporary folder.', array('%file' => $file_info->getFilename())), 'error'); + $files[$i] = FALSE; + continue; + + case UPLOAD_ERR_CANT_WRITE: + drupal_set_message(t('The file %file could not be saved because server is unable to write to disk.', array('%file' => $file_info->getFilename())), 'error'); + $files[$i] = FALSE; + continue; + + case UPLOAD_ERR_EXTENSION: + drupal_set_message(t('The file %file could not be saved because a PHP extension stopped the file upload. PHP does not provide a way to ascertain which extension caused the file upload to stop; examining the list of loaded extensions with phpinfo() may help.', array('%file' => $file_info->getFilename())), 'error'); + $files[$i] = FALSE; + continue; + case UPLOAD_ERR_OK: // Final check that this is a valid upload, if it isn't, use the // default error handler.