|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
[2006-03-09 05:18 UTC] me at contents dot nl
Description:
------------
APC crashes APC when the code includes a line $x->y = "z", but only if this codeline is withing a class method. No crash occurs when its in a function. It also doesn't crash when assigning through another variable:
$q = "z";
$x->y = $q;
On the first request the code executes just fine, on any subsequent request it crashes apache (1.3.33). APC 3.0.9-dev from pecl4win, php 5.1.2
Reproduce code:
---------------
<?php
class A {
public $y;
}
class B {
function doit() {
$x = new A();
$x->y = "z";
}
}
echo "hello world";
?>
Expected result:
----------------
hello world
Actual result:
--------------
crash
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Sat Oct 25 17:00:01 2025 UTC |
a new backtrace with php_apc symbols: php5ts.dll!zend_is_auto_global(char * name=0x013b2f84, unsigned int name_len=1, void * * * tsrm_ls=0x00d5b3f6) Line 3955 + 0x21 bytes C php_apc.dll!my_fetch_global_vars(_zend_op_array * src=0x066bbe88, void * * * tsrm_ls=0x00d5b3f6) Line 1802 + 0x1a bytes C php_apc.dll!apc_copy_function_for_execution(_zend_function * src=0x013b2b0c, void * * * tsrm_ls=0x00d5b3f6) Line 1830 + 0xd bytes C php_apc.dll!apc_copy_function_for_execution_ex(void * dummy=0x00000000, _zend_function * src=0x013b2b0c, void * * * tsrm_ls=0x00d5b3f6) Line 1841 + 0xd bytes C php_apc.dll!my_copy_hashtable_ex(_hashtable * dst=0x066bbc5c, _hashtable * src=0x013b2950, void * (void *, void *, void * (unsigned int)*, void (void *)*)* copy_fn=0x00d5a294, void (void *, void (void *)*)* free_fn=0x00000000, int holds_ptrs=0, void * (unsigned int)* allocate=0x00d5b3f6, void (void *)* deallocate=0x00d5ae88, int (bucket *, char *)* check_fn=0x00000000, ...) Line 931 + 0x16 bytes C php_apc.dll!apc_copy_class_entry_for_execution(_zend_class_entry * src=0x013b2934, int is_derived=0) Line 1875 + 0x28 bytes C php_apc.dll!install_class(apc_class_t cl={...}, void * * * tsrm_ls=0x0114f370) Line 109 + 0xd bytes C php_apc.dll!cached_compile(void * * * tsrm_ls=0x0114f370) Line 190 + 0x38 bytes C php_apc.dll!my_compile_file(_zend_file_handle * h=0x034afdcc, int type=2, void * * * tsrm_ls=0x0114f370) Line 253 + 0x9 bytes C php5ts.dll!zend_execute_scripts(int type=8, void * * * tsrm_ls=0x0114f370, _zval_struct * * retval=0x00000000, int file_count=3, ...) Line 1101 + 0xa bytes C php5ts.dll!php_execute_script(_zend_file_handle * primary_file=0x034afdcc, void * * * tsrm_ls=0x0114f370) Line 1719 + 0x12 bytes C php5apache.dll!apache_php_module_main(request_rec * r=0x01151620, int display_source_mode=0, void * * * tsrm_ls=0x0114f370) Line 53 + 0x1b bytes C php5apache.dll!send_php(request_rec * r=0x01151620, int display_source_mode=0, char * filename=0x01152190) Line 662 + 0xb bytes C php5apache.dll!send_parsed_php(request_rec * r=0x01151620) Line 676 + 0xe bytes C ApacheCore.dll!6ff64bc7() [Frames below may be incorrect and/or missing, no symbols loaded for ApacheCore.dll]