Page Menu
Home
Phabricator
Search
Configure Global Search
Log In
Files
F3357
DoubleAndBrokenRedirectsFix.patch
Public
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Authored By
•
bzimport
Nov 21 2014, 9:27 PM
2014-11-21 21:27:46 (UTC+0)
Size
3 KB
Referenced Files
None
Subscribers
None
DoubleAndBrokenRedirectsFix.patch
View Options
Index: includes/SpecialDoubleRedirects.php
===================================================================
--- includes/SpecialDoubleRedirects.php (revision 17406)
+++ includes/SpecialDoubleRedirects.php (working copy)
@@ -26,7 +26,7 @@
function getSQLText( &$dbr, $namespace = null, $title = null ) {
- extract( $dbr->tableNames( 'page', 'pagelinks' ) );
+ extract( $dbr->tableNames( 'page', 'redirect' ) );
$limitToTitle = !( $namespace === null && $title === null );
$sql = $limitToTitle ? "SELECT" : "SELECT 'DoubleRedirects' as type," ;
@@ -34,14 +34,14 @@
" pa.page_namespace as namespace, pa.page_title as title," .
" pb.page_namespace as nsb, pb.page_title as tb," .
" pc.page_namespace as nsc, pc.page_title as tc" .
- " FROM $pagelinks AS la, $pagelinks AS lb, $page AS pa, $page AS pb, $page AS pc" .
+ " FROM $redirect AS ra, $redirect AS rb, $page AS pa, $page AS pb, $page AS pc" .
" WHERE pa.page_is_redirect=1 AND pb.page_is_redirect=1" .
- " AND la.pl_from=pa.page_id" .
- " AND la.pl_namespace=pb.page_namespace" .
- " AND la.pl_title=pb.page_title" .
- " AND lb.pl_from=pb.page_id" .
- " AND lb.pl_namespace=pc.page_namespace" .
- " AND lb.pl_title=pc.page_title";
+ " AND ra.rd_from=pa.page_id" .
+ " AND ra.rd_namespace=pb.page_namespace" .
+ " AND ra.rd_title=pb.page_title" .
+ " AND rb.rd_from=pb.page_id" .
+ " AND rb.rd_namespace=pc.page_namespace" .
+ " AND rb.rd_title=pc.page_title";
if( $limitToTitle ) {
$encTitle = $dbr->addQuotes( $title );
Index: includes/SpecialBrokenRedirects.php
===================================================================
--- includes/SpecialBrokenRedirects.php (revision 17406)
+++ includes/SpecialBrokenRedirects.php (working copy)
@@ -27,16 +27,16 @@
function getSQL() {
$dbr =& wfGetDB( DB_SLAVE );
- extract( $dbr->tableNames( 'page', 'pagelinks' ) );
+ extract( $dbr->tableNames( 'page', 'redirect' ) );
$sql = "SELECT 'BrokenRedirects' AS type,
p1.page_namespace AS namespace,
p1.page_title AS title,
- pl_namespace,
- pl_title
- FROM $pagelinks AS pl
- JOIN $page p1 ON (p1.page_is_redirect=1 AND pl.pl_from=p1.page_id)
- LEFT JOIN $page AS p2 ON (pl_namespace=p2.page_namespace AND pl_title=p2.page_title )
+ rd_namespace,
+ rd_title
+ FROM $redirect AS rd
+ JOIN $page p1 ON (p1.page_is_redirect=1 AND rd.rd_from=p1.page_id)
+ LEFT JOIN $page AS p2 ON (rd_namespace=p2.page_namespace AND rd_title=p2.page_title )
WHERE p2.page_namespace IS NULL";
return $sql;
}
@@ -49,8 +49,8 @@
global $wgContLang;
$fromObj = Title::makeTitle( $result->namespace, $result->title );
- if ( isset( $result->pl_title ) ) {
- $toObj = Title::makeTitle( $result->pl_namespace, $result->pl_title );
+ if ( isset( $result->rd_title ) ) {
+ $toObj = Title::makeTitle( $result->rd_namespace, $result->rd_title );
} else {
$blinks = $fromObj->getBrokenLinksFrom();
if ( $blinks ) {
File Metadata
Details
Attached
Mime Type
text/x-diff
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
2926
Default Alt Text
DoubleAndBrokenRedirectsFix.patch (3 KB)
Attached To
Mode
T9794: Special:DoubleRedirects also contains redirect pages which wrongly link to redirects under the "#REDIRECT"
Attached
Detach File
Event Timeline
Log In to Comment