TraditionalImageGallery: Preload Titles being linked into LinkCache
authorKunal Mehta <legoktm@member.fsf.org>
Fri, 20 May 2016 01:53:18 +0000 (18:53 -0700)
committerKunal Mehta <legoktm@member.fsf.org>
Fri, 20 May 2016 02:08:03 +0000 (19:08 -0700)
Change-Id: Ie8b2508a52c1c1476f34f0b8e16184bed15310e1

includes/gallery/TraditionalImageGallery.php

index f00e260..2fb2281 100644 (file)
@@ -59,6 +59,16 @@ class TraditionalImageGallery extends ImageGalleryBase {
                        $output .= "\n\t<li class='gallerycaption'>{$this->mCaption}</li>";
                }
 
+               if ( $this->mShowFilename ) {
+                       // Preload LinkCache info for when generating links
+                       // of the filename below
+                       $lb = new LinkBatch();
+                       foreach ( $this->mImages as $img ) {
+                               $lb->addObj( $img[0] );
+                       }
+                       $lb->execute();
+               }
+
                $lang = $this->getRenderLang();
                # Output each image...
                foreach ( $this->mImages as $pair ) {
@@ -176,6 +186,7 @@ class TraditionalImageGallery extends ImageGalleryBase {
                        }
 
                        $textlink = $this->mShowFilename ?
+                               // Preloaded into LinkCache above
                                Linker::linkKnown(
                                        $nt,
                                        htmlspecialchars( $lang->truncate( $nt->getText(), $this->mCaptionLength ) )