Merge "filebackend: avoid use of wfWikiId() in FileBackendGroup"
[lhc/web/wiklou.git] / includes / api / ApiQueryBacklinksprop.php
index bfacc51..022fd9b 100644 (file)
@@ -129,6 +129,9 @@ class ApiQueryBacklinksprop extends ApiQueryGeneratorBase {
                if ( !$titles ) {
                        return; // nothing to do
                }
+               if ( $params['namespace'] !== null && count( $params['namespace'] ) === 0 ) {
+                       return; // nothing to do
+               }
 
                // Figure out what we're sorting by, and add associated WHERE clauses.
                // MySQL's query planner screws up if we include a field in ORDER BY
@@ -283,6 +286,8 @@ class ApiQueryBacklinksprop extends ApiQueryGeneratorBase {
                $res = $this->select( __METHOD__ );
 
                if ( is_null( $resultPageSet ) ) {
+                       $this->executeGenderCacheFromResultWrapper( $res, __METHOD__ );
+
                        $count = 0;
                        foreach ( $res as $row ) {
                                if ( ++$count > $params['limit'] ) {
@@ -331,6 +336,12 @@ class ApiQueryBacklinksprop extends ApiQueryGeneratorBase {
                                        $this->setContinue( $row, $sortby );
                                        break;
                                }
+
+                               if ( $miser_ns !== null && !in_array( $row->page_namespace, $miser_ns ) ) {
+                                       // Miser mode namespace check
+                                       continue;
+                               }
+
                                $titles[] = Title::makeTitle( $row->page_namespace, $row->page_title );
                        }
                        $resultPageSet->populateFromTitles( $titles );