Re-introduce use of mime_content_type()
authorTimo Tijhof <krinklemail@gmail.com>
Tue, 25 Jul 2017 05:11:17 +0000 (22:11 -0700)
committerKrinkle <krinklemail@gmail.com>
Thu, 27 Jul 2017 02:18:43 +0000 (02:18 +0000)
commit7f000f86812f83c12e785a0f6092ee08337c663f
treea8fb9c6e71eafc5fb41505e682bf4cd7c288b754
parent1a81ba9bcb801de0be82fbd44332dada53800879
Re-introduce use of mime_content_type()

Follows-up eac059c7224. See also https://stackoverflow.com/a/39676272/319266.

This function was never deprecated. For a short time, the www.php.net
manual page for `mime_content_type` wrongly documented it as having been
deprecated in PHP 5.3, but this wasn't true, and it has been present in
every PHP version since PHP 4.3, including PHP 7 and HHVM 2.3+.

Between PHP 4.3.0-4.3.2 and PHP 5.0-5.3, the function would be absent
if the Mimemagic extension was not enabled at compile-time. However, while
mime_content_type was first introduced by the Mimemagic PHP ext, it is
backend by the Finfo extension since PHP 5.3.0.

Confirmed via https://3v4l.org/IQC1Q.

* CSSMin: Revert conditional use of finfo back to unconditional use
  of mime_content_type.

* MimeAnalyzer: Replace conditional use of finfo with unconditional use
  use of mime_content_type. Also remove the now-redundant 'else' branch.
  The 'else' branch existed because this code was written at a time where
  MediaWiki still supported PHP 4, of which some minor versions could
  sometimes be compiled without this function.

Change-Id: Iee4a0b6f616a469bb779c40e386045f9c3200446
includes/DefaultSettings.php
includes/libs/CSSMin.php
includes/libs/filebackend/FileBackendStore.php
includes/libs/mime/MimeAnalyzer.php