Page MenuHomePhabricator

Give error message, when trying to watch a page in special or media namespace
Closed, ResolvedPublic

Description

When visit a special page with action=watch, this action is ignored and the special page is shown, please show a error message instead.

When visit a page in media namespace with action=watch a MediaWiki internal error is shown, please show a error message instead.

Thanks.

MediaWiki internal error.

Original exception: exception 'MWException' with message 'MWNamespace::getTalk does not make any sense for given namespace -2' in /home/wikipedia/common/php-1.18/includes/Namespace.php:40
Stack trace:
#0 /home/wikipedia/common/php-1.18/includes/Namespace.php(84): MWNamespace::isMethodValidFor(-2, 'MWNamespace::ge...')
#1 /home/wikipedia/common/php-1.18/includes/Title.php(2844): MWNamespace::getTalk(-2)
#2 /home/wikipedia/common/php-1.18/includes/Skin.php(197): Title->getTalkPage()
#3 /home/wikipedia/common/php-1.18/includes/Skin.php(176): Skin->preloadExistence()
#4 /home/wikipedia/common/php-1.18/skins/Vector.php(31): Skin->initPage(Object(OutputPage))
#5 /home/wikipedia/common/php-1.18/includes/SkinTemplate.php(153): SkinVector->initPage(Object(OutputPage))
#6 /home/wikipedia/common/php-1.18/includes/OutputPage.php(1856): SkinTemplate->outputPage(Object(OutputPage))
#7 /home/wikipedia/common/php-1.18/includes/Wiki.php(380): OutputPage->output()
#8 /home/wikipedia/common/php-1.18/includes/Wiki.php(625): MediaWiki->finalCleanup()
#9 /home/wikipedia/common/php-1.18/includes/Wiki.php(531): MediaWiki->main()
#10 /home/wikipedia/common/php-1.18/index.php(57): MediaWiki->run()
#11 /usr/local/apache/common-local/live-1.5/index.php(3): require('/home/wikipedia...')
#12 {main}

Exception caught inside exception handler: exception 'MWException' with message 'MWNamespace::getTalk does not make any sense for given namespace -2' in /home/wikipedia/common/php-1.18/includes/Namespace.php:40
Stack trace:
#0 /home/wikipedia/common/php-1.18/includes/Namespace.php(84): MWNamespace::isMethodValidFor(-2, 'MWNamespace::ge...')
#1 /home/wikipedia/common/php-1.18/includes/Title.php(2844): MWNamespace::getTalk(-2)
#2 /home/wikipedia/common/php-1.18/includes/Skin.php(197): Title->getTalkPage()
#3 /home/wikipedia/common/php-1.18/includes/Skin.php(176): Skin->preloadExistence()
#4 /home/wikipedia/common/php-1.18/skins/Vector.php(31): Skin->initPage(Object(OutputPage))
#5 /home/wikipedia/common/php-1.18/includes/SkinTemplate.php(153): SkinVector->initPage(Object(OutputPage))
#6 /home/wikipedia/common/php-1.18/includes/OutputPage.php(1856): SkinTemplate->outputPage(Object(OutputPage))
#7 /home/wikipedia/common/php-1.18/includes/Exception.php(183): OutputPage->output()
#8 /home/wikipedia/common/php-1.18/includes/Exception.php(209): MWException->reportHTML()
#9 /home/wikipedia/common/php-1.18/includes/Exception.php(392): MWException->report()
#10 /home/wikipedia/common/php-1.18/includes/Exception.php(471): MWExceptionHandler::report(Object(MWException))
#11 /home/wikipedia/common/php-1.18/includes/Wiki.php(534): MWExceptionHandler::handle(Object(MWException))
#12 /home/wikipedia/common/php-1.18/index.php(57): MediaWiki->run()
#13 /usr/local/apache/common-local/live-1.5/index.php(3): require('/home/wikipedia...')
#14 {main}


Version: 1.18.x
Severity: normal

Details

Reference
bz32032

Event Timeline

bzimport raised the priority of this task from to High.Nov 21 2014, 11:59 PM
bzimport set Reference to bz32032.
bzimport added a subscriber: Unknown Object (MLST).

See also Bug 32030 for more media ns weirdness

(In reply to comment #2)

Fixed in r101656.

Opps, wrong bug.

(In reply to comment #3)

(In reply to comment #2)

Fixed in r101656.

Opps, wrong bug.

However, the exception on Media: pages when watching was fixed there.

Pages in Media-namespace are redirect to file, action=watch of special page is ignored, but that is not a big problem.