On 8/27/09 5:55 PM, Juliano F. Ravasi wrote: > I'm the author of the Wikilog MediaWiki extension. Today, a user > contacted me about an error that MediaWiki is reporting concerning the > extension: > > Detected bug in an extension! Hook WikilogHooks::UnknownAction > failed to return a value; should return true to continue hook > processing or false to abort. [snip] > The error message seems really obvious, except that there should be no > way for the reported function to finish without returning a value.
The callback is called via call_user_func_array, which apparently can end up returning null in certain failure cases: http://bugs.php.net/bug.php?id=47554 You can see an example here where I try passing in an invalid callback (as I don't have the class locally, it's not callable): > var_dump(call_user_func(array('WikilogHooks','UnknownAction'))); Warning: call_user_func(WikilogHooks::UnknownAction): First argument is expected to be a valid callback in /Library/WebServer/Documents/trunk/maintenance/eval.php(60) : eval()'d code on line 1 NULL That warning message may not be shown depending on PHP's error_log and display_errors settings, leaving only MediaWiki's display of the now-surprising exception about the hook function returning null. There could be several reasons it's failing: * something's trashing the $wgAutoloadClasses entries, causing the hooks class to not be loaded (I suspect this is most likely; another extension might be responsible) * missing or damaged WikilogHooks.php file * missing or damaged Wikilog.php file * weird PHP breakage like a borked opcode cache -- brion _______________________________________________ MediaWiki-l mailing list [email protected] https://lists.wikimedia.org/mailman/listinfo/mediawiki-l
