cache template redirects, since we were already checking cache for them
authorSteve Sanbeg <sanbeg@users.mediawiki.org>
Wed, 21 Nov 2007 23:07:36 +0000 (23:07 +0000)
committerSteve Sanbeg <sanbeg@users.mediawiki.org>
Wed, 21 Nov 2007 23:07:36 +0000 (23:07 +0000)
includes/Parser.php

index 26f0f98..e07157b 100644 (file)
@@ -3377,6 +3377,7 @@ class Parser
         * and its redirect destination title. Cached.
         */
        function getTemplateDom( $title ) {
+               $cacheTitle = $title;
                $titleText = $title->getPrefixedDBkey();
                
                if ( isset( $this->mTplRedirCache[$titleText] ) ) {
@@ -3410,7 +3411,14 @@ class Parser
                }
 
                $dom = $this->preprocessToDom( $text );
-               $this->mTplDomCache[$titleText] = $dom;
+
+               $this->mTplDomCache[ $titleText ] = $dom;
+
+               if (! $title->equals($cacheTitle)) {
+                       $this->mTplRedirCache[$cacheTitle->getPrefixedDBkey()] = 
+                               array( $title->getNamespace(),$cdb = $title->getDBkey() );
+               }
+
                return array( $dom, $title );
        }