Page MenuHomePhabricator

PHP notice on every api page
Closed, ResolvedPublic

Description

Notice: Undefined index: preferences in /www/dev.translatewiki.net/w/includes/GlobalFunctions.php on line 260

Started to happen with the new api.php.

#0 /www/dev.translatewiki.net/w/extensions/LiquidThreads/classes/Hooks.php(530): wfArrayInsertAfter(array, array, string)
#1 [internal function]: LqtHooks::onPersonalUrls(array, Title, SkinApi)
#2 /www/dev.translatewiki.net/w/includes/Hooks.php(206): call_user_func_array(string, array)
#3 /www/dev.translatewiki.net/w/includes/GlobalFunctions.php(4008): Hooks::run(string, array, NULL)
#4 /www/dev.translatewiki.net/w/includes/skins/SkinTemplate.php(710): wfRunHooks(string, array)
#5 /www/dev.translatewiki.net/w/includes/skins/SkinTemplate.php(474): SkinTemplate->buildPersonalUrls()
#6 /www/dev.translatewiki.net/w/includes/skins/SkinTemplate.php(239): SkinTemplate->prepareQuickTemplate(OutputPage)
#7 /www/dev.translatewiki.net/w/includes/OutputPage.php(2184): SkinTemplate->outputPage()
#8 /www/dev.translatewiki.net/w/includes/api/ApiFormatBase.php(180): OutputPage->output()
#9 /www/dev.translatewiki.net/w/includes/api/ApiMain.php(1106): ApiFormatBase->closePrinter()
#10 /www/dev.translatewiki.net/w/includes/api/ApiMain.php(445): ApiMain->printResult(boolean)
#11 /www/dev.translatewiki.net/w/includes/api/ApiMain.php(389): ApiMain->handleException(UsageException)
#12 /www/dev.translatewiki.net/w/includes/api/ApiMain.php(358): ApiMain->executeActionWithErrorHandling()
#13 /www/dev.translatewiki.net/w/api.php(85): ApiMain->execute()
#14 {main}


Version: master
Severity: normal

Details

Reference
bz72131

Event Timeline

bzimport raised the priority of this task from to High.Nov 22 2014, 3:59 AM
bzimport set Reference to bz72131.
bzimport added a subscriber: Unknown Object (MLST).

What's going on there is that the API codepath is calling the skin using a context with an anonymous user rather than $wgUser (so that language hacks don't break caching), while LQT is checking $wgUser and assuming that fields are present based on that.

gerritadmin wrote:

Change 167247 had a related patch set uploaded by Anomie:
API: Clean up skin handling

https://gerrit.wikimedia.org/r/167247

gerritadmin wrote:

Change 167247 merged by jenkins-bot:
API: Clean up skin handling

https://gerrit.wikimedia.org/r/167247