Revert r31243, r31244 -- regression: spews bogus protection entries into page history...
authorBrion Vibber <brion@users.mediawiki.org>
Mon, 25 Feb 2008 21:31:59 +0000 (21:31 +0000)
committerBrion Vibber <brion@users.mediawiki.org>
Mon, 25 Feb 2008 21:31:59 +0000 (21:31 +0000)
RELEASE-NOTES
includes/Article.php

index 914c0df..ff50614 100644 (file)
@@ -39,7 +39,6 @@ it from source control: http://www.mediawiki.org/wiki/Download_from_SVN
 * (bug 10677) Add link to the file description page on the shared repository
 * (bug 13084) Increase size of source/destination filename fields in upload form
 * (bug 13115) rebuildrecentchanges should print the current value of $wgRCMaxAge
-* (bug 13132) Unable to unprotect pages protected with earlier versions of MediaWiki
 * (bug 13140) Show parent categories in category namespace
 * (bug 13149) Correctly format 'fileexists' message on Upload page.
 * Make filepageexists accurate.
index 68e561a..4a18d2b 100644 (file)
@@ -1771,6 +1771,7 @@ class Article {
                                if ( $cascade )
                                        $comment .= "$cascade_description";
                                
+                               $rowsAffected = false;
                                # Update restrictions table
                                foreach( $limit as $action => $restrictions ) {
                                        if ($restrictions != '' ) {
@@ -1778,11 +1779,18 @@ class Article {
                                                        array( 'pr_page' => $id, 'pr_type' => $action
                                                                , 'pr_level' => $restrictions, 'pr_cascade' => $cascade ? 1 : 0
                                                                , 'pr_expiry' => $encodedExpiry ), __METHOD__  );
+                                               if($dbw->affectedRows() != 0)
+                                                       $rowsAffected = true;
                                        } else {
                                                $dbw->delete( 'page_restrictions', array( 'pr_page' => $id,
                                                        'pr_type' => $action ), __METHOD__ );
+                                               if($dbw->affectedRows() != 0)
+                                                       $rowsAffected = true;
                                        }
                                }
+                               if(!$rowsAffected)
+                                       // No change
+                                       return true;
 
                                # Insert a null revision
                                $nullRevision = Revision::newNullRevision( $dbw, $id, $comment, true );