Edit report at https://bugs.php.net/bug.php?id=61766&edit=1
ID: 61766 Comment by: php at guyjohnson dot org Reported by: admin dot windows at gmail dot com Summary: call_user_func sends scrambled class name to autoload Status: Not a bug Type: Bug Package: *General Issues Operating System: ALL PHP Version: 5.3.10 Block user comment: N Private report: N New Comment: Dropping the zend guard loader did the trick! Sorry I didn't read the whole thread before posting... first time here. Thanks! Previous Comments: ------------------------------------------------------------------------ [2012-09-18 23:29:38] php at guyjohnson dot org I am encountering a very similar problem. I use call_user_func_array to execute a static class method and I get a corrupted call. Unlike the original report, it's not the class name that's corrupted, but rather the method name in my case. Here's the code: return array_keys(call_user_func_array(array(get_called_class(), 'fielddefs'), func_get_args())); By the time the method is called, the method name is completely corrupted to become this method name: &j-2!?{7k Here's a string-ified backtrace: exception 'ErrorException' with message 'WARNING: Attempt to call e_member->&j- 2!?{7k failed because "" is not callable (iaw:element:member.&j-2!?{7k).' in /home7/inneract/sites/iawtest/lib/capcelinstance.php:650 Stack trace: #0 [internal function]: CapcelInstance->__call('&j-2!?{7k', Array) #1 [internal function]: e_member->&j-2!?{7k(Object(CapcelPortal), 10, NULL, Array) #2 /home7/inneract/sites/iawtest/lib/capcelinstance.php(282): call_user_func_array(Array, Array) #3 [internal function]: CapcelInstance->field_list(Object(CapcelPortal), 10, NULL, Array) #4 /home7/inneract/sites/iawtest/lib/capcelinstance.php(324): call_user_func_array(Array, Array) #5 /home7/inneract/sites/iawtest/app/iaw/a_establishmember.php(115): CapcelInstance->render_fields(Object(CapcelPortal), 10, NULL, Array) #6 /home7/inneract/sites/iawtest/app/web/scheduler.php(31): a_EstablishMember- >render(Object(CapcelPortal), Array) #7 {main} Frame 0 and the exception itself are only symptoms. The problem is first visible in frame 1 and there is no trace of a problem when call_user_func_array() is called in line 282 of the code as shown in frame 2. I have examined a full backtrace in detail and confirmed that there is no corruption of any kind visible going into the call to call_user_func_array(). The method "fielddefs" does exist in the class CapcelInstance, of which e_member is a subclass. I strongly believe there's a real bug in call_user_func_array... some kind of data corruption occurs as it executes and before it calls the target callable. ------------------------------------------------------------------------ [2012-05-25 09:35:52] hefi at lajt dot hu I met the same problem. I found that if I commented out ZendGuardLoader.so then it would worked fine! ------------------------------------------------------------------------ [2012-04-20 01:54:53] ahar...@php.net We really can't support any third party extensions. It could be any or none of them. Since you're unable to disable those extensions, I'm going to close this bug for now. If you are able to get your host to disable all third party extensions, including the Suhosin patch, and the behaviour recurs, please reopen the bug. ------------------------------------------------------------------------ [2012-04-19 10:37:07] admin dot windows at gmail dot com Unfortunately I don't have rights to enable or disable modules on my cloud, I would pass this issue to my hosting support. Also I noticed that server is protected with the Suhosin Patch 0.9.10 can it cause this behavior? ------------------------------------------------------------------------ [2012-04-19 09:21:26] johan...@php.net Please disable ionCube Loader, Zend Guard Loader and XCache as all of these 3rd party modules change the engine's behaviour. ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at https://bugs.php.net/bug.php?id=61766 -- Edit this bug report at https://bugs.php.net/bug.php?id=61766&edit=1