This message appeared after upgrading module grants to 6.x-3.5

warning: call_user_func_array() [function.call-user-func-array]: First argument is expected to be a valid callback, 'user_any_access' was given in /home/tasc/public_html/includes/menu.inc on line 452.

and disappeared after disabling module grants monitor sub-module.

CommentFileSizeAuthor
#5 modules.png81.65 KBsnowmountain

Comments

snowmountain’s picture

Title: warning when module grants monitor enabled » warning when module_grants_monitor enabled
snowmountain’s picture

This happened during upgrading Drupal from 6.15 to 6.16 - the warning message was present with both versions of Drupal.

rdeboer’s picture

Hi snowmountain,
Did you remember to go to the Site building >> Modules page and press "Save configuration"?
Rik

snowmountain’s picture

Thanks for the reply!

I didn't save changes to modules, since module grants was already enabled and I just installed the new module and then ran the database updates, without enabling or disabling any modules. If I should have disabled the module before upgrading it, please let me know!

However I upgraded several modules at this time - installed the code for several, and then ran updates. They included revisioning, workflow, module grants, filefield_sources, wysiwyg, and pathauto. This probably was done in 2 or 3 groups - I didn't record the details.

I wasn't changing (enabling / disabling) any modules until after the warning message appeared. Module grants and the monitor sub-module were enabled already, then I ftp'd and installed the new module grants code, and then ran updates. Then the warning appeared.

After seeing the warning message, I then experimented with disabling some modules to eliminate the warning message. Revisioning was disabled, no effect - and also content access (though not upgraded), was disabled with no effect.

Thanks, and I hope this information is helpful. Let me know if I can give any more information - by the way, I am running at least PHP 5.2.

snowmountain’s picture

Status: Closed (fixed) » Active
StatusFileSize
new81.65 KB

It's working now.

I tried installing on another site of mine, and there saw a dependency that Drupal had not shown me. Everything worked fine.

Strange, on the problem site, though I upgraded the module, the module grants monitor sub module did not go up to 3.5. But the code - the .info file - said 3.5, when Drupal module listing displayed 3.4! (see attached screenshot)

Almost reinstalled the code, but I saw 3.5 in the .info file so I just ran updates - no change.

To fix I finally deleted the directory with the module grants monitor, and then reinstalled the module - then ran updates.

Now it works.

Also, when it was not working, the dependency requirement of module grants monitor for user tools, was never met - I didn't enable it, since it was not showing as required! (perhaps due to the wrong version number?)

I will set this to closed - the problem seems to have been due to the module code not completely installing.

snowmountain’s picture

Status: Active » Closed (fixed)
rdeboer’s picture

Status: Active » Closed (fixed)

Hi snowmountain,
Generally you won't have to uninstall or even disable and re-enable.
But if you don't delete the module directory and just unzip the .tar.gz over the top of it, you effectively create a MERGE of the old and the new as far as files are concerned that exist in the old and not in the new or vice versa (files by the same name get overwritten as expected). So if the developer has done some serious rearranging of files and functions, the system may get its nickers in a knot.
People also often forget to go to Site building >> Modules AND press "Save". This means that menus generated by the module in question do not get updated and so still point to old code, even though the new code is physically present.
I think this is what might have happened in your case as 'user_any_access' is a reference to a now defunct function.
Rik

delm’s picture

RdeBoer

I'm in the same position as snowmountain was, because i didn't press "save" on the damn page.
Which are the steps I need to follow to correct my site?

Also as a brief suggestion, maybe you need to place a more visual reminder to do this step correctly when needed, that would be appreciated because I know I will forget again :(.

rdeboer’s picture

If worst comes to worst uninstall Module Grants (and Revisioning if used) and reinstall. That should do it.