summaryrefslogtreecommitdiff
path: root/maintenance/namespaceDupes.php
diff options
context:
space:
mode:
Diffstat (limited to 'maintenance/namespaceDupes.php')
-rw-r--r--maintenance/namespaceDupes.php19
1 files changed, 13 insertions, 6 deletions
diff --git a/maintenance/namespaceDupes.php b/maintenance/namespaceDupes.php
index fcc7d3a1..c5b3ce96 100644
--- a/maintenance/namespaceDupes.php
+++ b/maintenance/namespaceDupes.php
@@ -224,12 +224,19 @@ class NamespaceConflictChecker {
function resolveConflict( $row, $resolvable, $suffix ) {
if( !$resolvable ) {
echo "... *** old title {$row->title}\n";
- $row->title .= $suffix;
- echo "... *** new title {$row->title}\n";
- $title = Title::makeTitleSafe( $row->namespace, $row->title );
- if ( ! $title ) {
- echo "... !!! invalid title\n";
- return false;
+ while( true ) {
+ $row->title .= $suffix;
+ echo "... *** new title {$row->title}\n";
+ $title = Title::makeTitleSafe( $row->namespace, $row->title );
+ if ( ! $title ) {
+ echo "... !!! invalid title\n";
+ return false;
+ }
+ if ( $id = $title->getArticleId() ) {
+ echo "... *** page exists with ID $id ***\n";
+ } else {
+ break;
+ }
}
echo "... *** using suffixed form [[" . $title->getPrefixedText() . "]] ***\n";
}