Hello Dmitry, Monday, August 11, 2008, 10:51:44 AM, you wrote:
> Hi Marcus, > I committed the ZE part of your patch with exception for > zend_error(E_ERROR, "Cannot destroy active lambda function"); > Catching this error may cause memory corruption and crash. Alright, didn't see that immediately. > Thanks. Dmitry. Thanks marcus > Marcus Boerger wrote: >> Hello Johannes, Christian, Felipe, >> >> and here 5.3 and 6.0 versions that also have most memleaks fixed. >> >> marcus >> >> Saturday, August 9, 2008, 12:34:59 AM, you wrote: >> >>> Hello Christian, Johannes, >> >>> Friday, August 8, 2008, 11:48:37 PM, you wrote: >> >>>> Hello Christian, >> >>>> I updated your patch for 5.3 due to recent changes. It works pretty fine >>>> for me. Care to test again, especially with your new tests? Note that test >>>> ext/reflection/tests/closures_001.phpt does not work for me and I have no >>>> clue why. Well, besides that obviously the closure class no longer has an >>>> entry for __closure, so it is more a question of how to know when to add >>>> this. Also, it appears you do not have a cvs account, or did I overlook >>>> something? >> >>>> Modified patch attached, including the updated reflection tests. >> >>> Ok, it is actually easy to fix, we just check whether the thing is a >>> closure and add the method manually, done. New patch attached. >> >>> Johannes, this also adresses the switch from E_ERROR to E_RECOVERABLE_ERROR >>> for the closure handlers. >> >>> best regards >>> marcus >> >>>> Monday, August 4, 2008, 12:59:13 PM, you wrote: >> >>>>> Christian, >> >>>>> On Mon, 2008-08-04 at 11:33 +0400, Dmitry Stogov wrote: >>>>>>>> http://www.christian-seiler.de/temp/php/2008-07-24-reflection/reflection-closure-fixes-5.3.patch >>>>>>>> >>>>>>>> >>>>>>>> http://www.christian-seiler.de/temp/php/2008-07-24-reflection/reflection-closure-fixes-6.patch >>>>>>>> >> >>>>> without applying and testing the patch: >> >>>>> - zend_hash_apply_with_arguments(&ce->function_table TSRMLS_CC, >>>>> (apply_func_args_t) _addmethod, 3, &ce, return_value, filter); >>>>> + zend_hash_apply_with_arguments(&ce->function_table TSRMLS_CC, >>>>> (apply_func_args_t) _addmethod, 3, &ce, return_value, filter, >>>>> intern->obj); >> >>>>> that looks a bit strange, probably you want 4 instead of 3 now? >> >>>>> johannes >> >> >> >> >> >>>> Best regards, >>>> Marcus >> >> >> >>> Best regards, >>> Marcus >> >> >> >> Best regards, >> Marcus >> Best regards, Marcus -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php