Merge "Fix typo in Release note"
[lhc/web/wiklou.git] / includes / cache / ResourceFileCache.php
index 3ace396..6d26a2d 100644 (file)
@@ -34,13 +34,15 @@ class ResourceFileCache extends FileCacheBase {
 
        /**
         * Construct an ResourceFileCache from a context
-        * @param $context ResourceLoaderContext
+        * @param ResourceLoaderContext $context
         * @return ResourceFileCache
         */
        public static function newFromContext( ResourceLoaderContext $context ) {
                $cache = new self();
 
-               if ( $context->getOnly() === 'styles' ) {
+               if ( $context->getImage() ) {
+                       $cache->mType = 'image';
+               } elseif ( $context->getOnly() === 'styles' ) {
                        $cache->mType = 'css';
                } else {
                        $cache->mType = 'js';
@@ -58,7 +60,7 @@ class ResourceFileCache extends FileCacheBase {
        /**
         * Check if an RL request can be cached.
         * Caller is responsible for checking if any modules are private.
-        * @param $context ResourceLoaderContext
+        * @param ResourceLoaderContext $context
         * @return bool
         */
        public static function useFileCache( ResourceLoaderContext $context ) {
@@ -69,7 +71,8 @@ class ResourceFileCache extends FileCacheBase {
                // Get all query values
                $queryVals = $context->getRequest()->getValues();
                foreach ( $queryVals as $query => $val ) {
-                       if ( $query === 'modules' || $query === 'version' || $query === '*' ) {
+                       if ( in_array( $query, array( 'modules', 'image', 'variant', 'version', '*' ) ) ) {
+                               // Use file cache regardless of the value of this parameter
                                continue; // note: &* added as IE fix
                        } elseif ( $query === 'skin' && $val === $wgDefaultSkin ) {
                                continue;
@@ -79,6 +82,8 @@ class ResourceFileCache extends FileCacheBase {
                                continue;
                        } elseif ( $query === 'debug' && $val === 'false' ) {
                                continue;
+                       } elseif ( $query === 'format' && $val === 'rasterized' ) {
+                               continue;
                        }
 
                        return false;