Fix some weird bugs on "you are blocked" form by unstubbing User object.
authorVictor Vasiliev <vasilievvv@users.mediawiki.org>
Thu, 5 Jun 2008 14:05:35 +0000 (14:05 +0000)
committerVictor Vasiliev <vasilievvv@users.mediawiki.org>
Thu, 5 Jun 2008 14:05:35 +0000 (14:05 +0000)
includes/Title.php

index 4ffcd98..49c0780 100644 (file)
@@ -1052,6 +1052,12 @@ class Title {
         * @return array Array of arrays of the arguments to wfMsg to explain permissions problems.
         */
        public function getUserPermissionsErrors( $action, $user, $doExpensiveQueries = true ) {
+               if( !StubObject::isRealObject( $user ) ) {
+                       //Since StubObject is always used on globals, we can unstub $wgUser here and set $user = $wgUser
+                       global $wgUser;
+                       $wgUser->_unstub( '', 5 );
+                       $user = $wgUser;
+               }
                $errors = $this->getUserPermissionsErrorsInternal( $action, $user, $doExpensiveQueries );
 
                global $wgContLang;