static function autoload( $className ) {
global $wgAutoloadClasses, $wgAutoloadLocalClasses;
- # Workaround for PHP bug <https://bugs.php.net/bug.php?id=49143> (5.3.2. is broken, it's fixed in 5.3.6).
- # Strip leading backslashes from class names. When namespaces are used, leading backslashes are used to indicate
- # the top-level namespace, e.g. \foo\Bar. When used like this in the code, the leading backslash isn't passed to
- # the auto-loader ($className would be 'foo\Bar'). However, if a class is accessed using a string instead of a
- # class literal (e.g. $class = '\foo\Bar'; new $class()), then some versions of PHP do not strip the leading
- # backlash in this case, causing autoloading to fail.
- $className = preg_replace( '/^\\\\/', '', $className );
+ // Workaround for PHP bug <https://bugs.php.net/bug.php?id=49143> (5.3.2. is broken, it's fixed in 5.3.6).
+ // Strip leading backslashes from class names. When namespaces are used, leading backslashes are used to indicate
+ // the top-level namespace, e.g. \foo\Bar. When used like this in the code, the leading backslash isn't passed to
+ // the auto-loader ($className would be 'foo\Bar'). However, if a class is accessed using a string instead of a
+ // class literal (e.g. $class = '\foo\Bar'; new $class()), then some versions of PHP do not strip the leading
+ // backlash in this case, causing autoloading to fail.
+ $className = ltrim( $className, '\\' );
if ( isset( $wgAutoloadLocalClasses[$className] ) ) {
$filename = $wgAutoloadLocalClasses[$className];
$context = $this->getContext();
if ( wfRunHooks( 'CustomEditor', array( $page, $user ) ) ) {
- if ( ( $page->getContent() instanceof TextContentHandler ) ) {
- $modelName = ContentHandler::getContentModelName( $page->getContentModel() );
- throw new MWException( "Can't use default editor for non-text content. ContentHandler for $modelName apparently does not provide an action handler for the edit action." );
- }
-
if ( ExternalEdit::useExternalEngine( $context, 'edit' )
&& $this->getName() == 'edit' && !$request->getVal( 'section' )
&& !$request->getVal( 'oldid' ) )
{
- $extedit = $handler->createExternalEdit( $context );
+ $extedit = new ExternalEdit( $context );
$extedit->execute();
} else {
- $editor = $handler->createEditPage( $page );
+ $editor = new EditPage( $page );
$editor->edit();
}
}
parent::show();
}
-}
+}
\ No newline at end of file