Fix logic error involving interpretation of result from validate() method, causing...
authorAndrew Garrett <werdna@users.mediawiki.org>
Wed, 3 Jun 2009 09:38:36 +0000 (09:38 +0000)
committerAndrew Garrett <werdna@users.mediawiki.org>
Wed, 3 Jun 2009 09:38:36 +0000 (09:38 +0000)
includes/Preferences.php

index c659144..f7af653 100644 (file)
@@ -51,10 +51,12 @@ class Preferences {
                                // Already set, no problem
                                continue;
                        } elseif ( !is_null( $prefFromUser ) && // Make sure we're not just pulling nothing
-                                       $field->validate( $prefFromUser, $user->mOptions ) ) {
+                                       $field->validate( $prefFromUser, $user->mOptions ) === true ) {
                                $info['default'] = $prefFromUser;
-                       } elseif( $field->validate( $globalDefault, $user->mOptions ) ) {
+                       } elseif( $field->validate( $globalDefault, $user->mOptions ) === true ) {
                                $info['default'] = $globalDefault;
+                       } else {
+                               throw new MWException( "Global default $globalDefault is invalid for field $name" );
                        }
                }