Merge pull request #3052 from vlakoff/mime
Fix caching of MIME config
diff --git a/system/core/Common.php b/system/core/Common.php
index 7f27081..752a2e7 100644
--- a/system/core/Common.php
+++ b/system/core/Common.php
@@ -304,15 +304,22 @@
*/
function &get_mimes()
{
- static $_mimes = array();
+ static $_mimes;
- if (file_exists(APPPATH.'config/'.ENVIRONMENT.'/mimes.php'))
+ if (empty($_mimes))
{
- $_mimes = include(APPPATH.'config/'.ENVIRONMENT.'/mimes.php');
- }
- elseif (file_exists(APPPATH.'config/mimes.php'))
- {
- $_mimes = include(APPPATH.'config/mimes.php');
+ if (file_exists(APPPATH.'config/'.ENVIRONMENT.'/mimes.php'))
+ {
+ $_mimes = include(APPPATH.'config/'.ENVIRONMENT.'/mimes.php');
+ }
+ elseif (file_exists(APPPATH.'config/mimes.php'))
+ {
+ $_mimes = include(APPPATH.'config/mimes.php');
+ }
+ else
+ {
+ $_mimes = array();
+ }
}
return $_mimes;
diff --git a/system/libraries/Email.php b/system/libraries/Email.php
index 1f2f6a9..63b7dc3 100644
--- a/system/libraries/Email.php
+++ b/system/libraries/Email.php
@@ -2234,14 +2234,9 @@
*/
protected function _mime_types($ext = '')
{
- static $mimes;
-
$ext = strtolower($ext);
- if ( ! is_array($mimes))
- {
- $mimes =& get_mimes();
- }
+ $mimes =& get_mimes();
if (isset($mimes[$ext]))
{