https://bugzilla.wikimedia.org/show_bug.cgi?id=17852

           Summary: API thows internal error: Empty $wgTitle in
                    OutputPage::parse
           Product: MediaWiki
           Version: unspecified
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: Normal
         Component: API
        AssignedTo: [email protected]
        ReportedBy: [email protected]
                CC: [email protected], [email protected]


The following API edit request throws an internal exception. This was very
repeatable;
I was able to turn on debugging and run the script again to capture the stack
trace. 
The page in question is "Category:Unassessed Grey's Anatomy articles" on
enwiki.

This is probably related to some other bug, since the page has a lingering
parser strip tag (UNIQ67316ef51deb354-nowiki-00000000-QINU) that does not
disappear even when I edit the page manually. But index.php is able to edit the
page, while the API is not. 

API request parameters:
  Base URL: http://en.wikipedia.org/w/api.php 
  Logged in as WP 1.0 bot
       action => 'edit' 
       token => redacted
       summary => 'Add to [[Category:Unassessed-Class articles]]'
       text => '{{categoryTOC}}
{{Cat class|topic=Grey's Anatomy|sort=Grey's Anatomy|class=Unassessed}}

Grey's Anatomy articles rated as B-Class on the [[Wikipedia:Version 1.0
Editorial Team/Assessment|Wikipedia 1.0 Assessment Scale]].  

Add items to this category by typing <nowiki>{{Project Grey's
Anatomy|class=Unassessed}}</nowiki> on the article's <u>talk</u> page.

<categorytree>Unassessed-Class Grey's Anatomy articles</categorytree>

[[Category:Grey's Anatomy articles by quality]]
[[Category:Unassessed-Class articles|Grey's Anatomy articles]]' 
       title => 'Category:Unassessed Grey's Anatomy articles' 
       format => 'xml' 
       bot => '1' 

Response info: 
 'code' => 'internal_api_error_MWException'
 'error' => {
     'info' => 'Exception Caught: Empty $wgTitle in OutputPage::parse',
     'content' => '
#0 [internal function]: OutputPage->parse(\'Category <i>Una...\', true, true)
#1 /usr/local/apache/common-local/php-1.5/includes/StubObject.php(58):
call_user_func_array(Array, Array)
#2 /usr/local/apache/common-local/php-1.5/includes/StubObject.php(76):
StubObject->_call(\'parse\', Array)
#3 [internal function]: StubObject->__call(\'parse\', Array)
#4 /usr/local/apache/common-local/php-1.5/includes/GlobalFunctions.php(740):
StubObject->parse(\'Category <i>Una...\', true, true)
#5
/usr/local/apache/common-local/php-1.5/extensions/CategoryTree/CategoryTreeFunctions.php(377):
wfMsgExt(\'categorytree-no...\', \'parseinline\', \'Unassessed-Clas...\')
#6
/usr/local/apache/common-local/php-1.5/extensions/CategoryTree/CategoryTree.php(347):
CategoryTree->getTag(Object(Parser), \'Unassessed-Clas...\', NULL, Array, 1,
false)
#7 [internal function]: efCategoryTreeParserHook(\'Unassessed-Clas...\', Array,
Object(Parser))
#8 /usr/local/apache/common-local/php-1.5/includes/parser/Parser.php(3232):
call_user_func_array(\'efCategoryTreeP...\', Array)
#9
/usr/local/apache/common-local/php-1.5/includes/parser/Preprocessor_DOM.php(1026):
Parser->extensionSubstitution(Array, Object(PPFrame_DOM))
#10 /usr/local/apache/common-local/php-1.5/includes/parser/Parser.php(2623):
PPFrame_DOM->expand(Object(PPNode_DOM), 0)
#11 /usr/local/apache/common-local/php-1.5/includes/parser/Parser.php(875):
Parser->replaceVariables(\'{{categoryTOC}}...\')
#12 /usr/local/apache/common-local/php-1.5/includes/parser/Parser.php(327):
Parser->internalParse(\'{{categoryTOC}}...\')
#13 /usr/local/apache/common-local/php-1.5/includes/Article.php(2854):
Parser->parse(\'{{categoryTOC}}...\', Object(Title), Object(ParserOptions),
true, true, NULL)
#14
/usr/local/apache/common-local/php-1.5/extensions/SpamBlacklist/SpamBlacklist_body.php(218):
Article->prepareTextForEdit(\'{{categoryTOC}}...\')
#15
/usr/local/apache/common-local/php-1.5/extensions/SpamBlacklist/SpamBlacklist.php(106):
SpamBlacklist->filter(Object(Title), \'{{categoryTOC}}...\', \'\', \'\',
Object(EditPage))
#16 [internal function]:
wfSpamBlacklistFilterAPIEditBeforeSave(Object(EditPage),
\'{{categoryTOC}}...\', Array)
#17 /usr/local/apache/common-local/php-1.5/includes/Hooks.php(117):
call_user_func_array(\'wfSpamBlacklist...\', Array)
#18 /usr/local/apache/common-local/php-1.5/includes/api/ApiEditPage.php(180):
wfRunHooks(\'APIEditBeforeSa...\', Array)
#19 /usr/local/apache/common-local/php-1.5/includes/api/ApiMain.php(431):
ApiEditPage->execute()
#20 /usr/local/apache/common-local/php-1.5/includes/api/ApiMain.php(261):
ApiMain->executeAction()
#21 /usr/local/apache/common-local/php-1.5/includes/api/ApiMain.php(245):
ApiMain->executeActionWithErrorHandling()
#22 /usr/local/apache/common-local/php-1.5/api.php(77): ApiMain->execute()
#23 /usr/local/apache/common-local/live-1.5/api.php(3):
require(\'/usr/local/apac...\')
#24 {main}'


-- 
Configure bugmail: https://bugzilla.wikimedia.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

_______________________________________________
Wikibugs-l mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/wikibugs-l

Reply via email to