Make mediawiki.special.pageLanguage work again
[lhc/web/wiklou.git] / includes / TemplateParser.php
index d6b101b..8ce3420 100644 (file)
@@ -41,7 +41,7 @@ class TemplateParser {
         * @param boolean $forceRecompile
         */
        public function __construct( $templateDir = null, $forceRecompile = false ) {
-               $this->templateDir = $templateDir ? $templateDir : __DIR__ . '/templates';
+               $this->templateDir = $templateDir ?: __DIR__ . '/templates';
                $this->forceRecompile = $forceRecompile;
        }
 
@@ -49,7 +49,7 @@ class TemplateParser {
         * Constructs the location of the the source Mustache template
         * @param string $templateName The name of the template
         * @return string
-        * @throws UnexpectedValueException Disallows upwards directory traversal via $templateName
+        * @throws UnexpectedValueException If $templateName attempts upwards directory traversal
         */
        protected function getTemplateFilename( $templateName ) {
                // Prevent upwards directory traversal using same methods as Title::secureAndSplit
@@ -79,7 +79,9 @@ class TemplateParser {
         */
        protected function getTemplate( $templateName ) {
                // If a renderer has already been defined for this template, reuse it
-               if ( isset( $this->renderers[$templateName] ) && is_callable( $this->renderers[$templateName] ) ) {
+               if ( isset( $this->renderers[$templateName] ) &&
+                       is_callable( $this->renderers[$templateName] )
+               ) {
                        return $this->renderers[$templateName];
                }
 
@@ -101,10 +103,8 @@ class TemplateParser {
 
                if ( $secretKey ) {
                        // See if the compiled PHP code is stored in cache.
-                       // CACHE_ACCEL throws an exception if no suitable object cache is present, so fall
-                       // back to CACHE_ANYTHING.
-                       $cache = ObjectCache::newAccelerator( CACHE_ANYTHING );
-                       $key = wfMemcKey( 'template', $templateName, $fastHash );
+                       $cache = ObjectCache::getLocalServerInstance( CACHE_ANYTHING );
+                       $key = $cache->makeKey( 'template', $templateName, $fastHash );
                        $code = $this->forceRecompile ? null : $cache->get( $key );
 
                        if ( !$code ) {