From 923527b7f4635f8142721f4a7ccf02d3d05fd24f Mon Sep 17 00:00:00 2001 From: Alex Pott <alex.a.pott@googlemail.com> Date: Tue, 3 Feb 2015 10:45:22 +0000 Subject: [PATCH] Issue #2415757 by chintan.vyas: Remove all uses of file_get_mimetype --- core/modules/file/file.module | 2 +- core/modules/file/src/Entity/File.php | 2 +- .../system/src/Form/ThemeSettingsForm.php | 22 ++++++++++++++----- 3 files changed, 19 insertions(+), 7 deletions(-) diff --git a/core/modules/file/file.module b/core/modules/file/file.module index 654530165cf3..794ffb30f859 100644 --- a/core/modules/file/file.module +++ b/core/modules/file/file.module @@ -756,7 +756,7 @@ function file_save_upload($form_field_name, $validators = array(), $destination 'uri' => $file_info->getRealPath(), 'filesize' => $file_info->getSize(), ); - $values['filemime'] = file_get_mimetype($values['filename']); + $values['filemime'] = \Drupal::service('file.mime_type.guesser')->guess($values['filename']); $file = entity_create('file', $values); $extensions = ''; diff --git a/core/modules/file/src/Entity/File.php b/core/modules/file/src/Entity/File.php index 7cf5058b237a..2dbbf31aa926 100644 --- a/core/modules/file/src/Entity/File.php +++ b/core/modules/file/src/Entity/File.php @@ -185,7 +185,7 @@ public static function preCreate(EntityStorageInterface $storage, array &$values // Automatically detect filemime if not set. if (!isset($values['filemime']) && isset($values['uri'])) { - $values['filemime'] = file_get_mimetype($values['uri']); + $values['filemime'] = \Drupal::service('file.mime_type.guesser')->guess($values['uri']); } } diff --git a/core/modules/system/src/Form/ThemeSettingsForm.php b/core/modules/system/src/Form/ThemeSettingsForm.php index 79cf30505d40..fd8b777a5b6f 100644 --- a/core/modules/system/src/Form/ThemeSettingsForm.php +++ b/core/modules/system/src/Form/ThemeSettingsForm.php @@ -12,6 +12,7 @@ use Drupal\Core\Render\Element; use Drupal\Core\StreamWrapper\PublicStream; use Symfony\Component\DependencyInjection\ContainerInterface; +use Symfony\Component\HttpFoundation\File\MimeType\MimeTypeGuesserInterface; use Symfony\Component\HttpKernel\Exception\NotFoundHttpException; use Drupal\Core\Cache\Cache; use Drupal\Core\Config\ConfigFactoryInterface; @@ -37,6 +38,13 @@ class ThemeSettingsForm extends ConfigFormBase { */ protected $themeHandler; + /** + * The MIME type guesser. + * + * @var \Symfony\Component\HttpFoundation\File\MimeType\MimeTypeGuesserInterface + */ + protected $mimeTypeGuesser; + /** * An array of configuration names that should be editable. * @@ -49,16 +57,19 @@ class ThemeSettingsForm extends ConfigFormBase { * * @param \Drupal\Core\Config\ConfigFactoryInterface $config_factory * The factory for configuration objects. - * @param \Drupal\Core\Extension\ModuleHandlerInterface + * @param \Drupal\Core\Extension\ModuleHandlerInterface $module_handler * The module handler instance to use. * @param \Drupal\Core\Extension\ThemeHandlerInterface $theme_handler - * The theme handler. + * The theme handler. + * @param \Symfony\Component\HttpFoundation\File\MimeType\MimeTypeGuesserInterface $mime_type_guesser + * The MIME type guesser instance to use. */ - public function __construct(ConfigFactoryInterface $config_factory, ModuleHandlerInterface $module_handler, ThemeHandlerInterface $theme_handler) { + public function __construct(ConfigFactoryInterface $config_factory, ModuleHandlerInterface $module_handler, ThemeHandlerInterface $theme_handler, MimeTypeGuesserInterface $mime_type_guesser) { parent::__construct($config_factory); $this->moduleHandler = $module_handler; $this->themeHandler = $theme_handler; + $this->mimeTypeGuesser = $mime_type_guesser; } /** @@ -68,7 +79,8 @@ public static function create(ContainerInterface $container) { return new static( $container->get('config.factory'), $container->get('module_handler'), - $container->get('theme_handler') + $container->get('theme_handler'), + $container->get('file.mime_type.guesser') ); } @@ -446,7 +458,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) { } if (empty($values['default_favicon']) && !empty($values['favicon_path'])) { - $values['favicon_mimetype'] = file_get_mimetype($values['favicon_path']); + $values['favicon_mimetype'] = $this->mimeTypeGuesser->guess($values['favicon_path']); } } -- GitLab