View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0001286 | Xdebug | Uncategorized | public | 2016-03-17 02:16 | 2018-01-29 21:46 |
Reporter | jboffel | Assigned To | derick | ||
Priority | high | Severity | crash | Reproducibility | always |
Status | resolved | Resolution | unable to reproduce | ||
Product Version | 2.3.3 | ||||
Summary | 0001286: When generating trace file with xdebug.collect_params = 4 it will crash if one of the param is a closure | ||||
Description | Those are my Xdebug settings: xdebug.trace_enable_trigger = 1 zend_extension="/usr/local/xxxx/5.6.8/lib/php/extensions/no-debug-non-zts-20131226/xdebug.so" If I load a webpage running php with trace file cookie activated it will crash if one of the serialized param is a closure. I then get that in the error.log: [Thu Mar 17 10:56:47.008717 2016] [:error] [pid 18000] [client xxxxxx] PHP Fatal error: Uncaught exception 'Exception' with message 'Serialization of 'Closure' is not allowed' If I change to collect_params = 4, restart apache and refresh then the problem does not occure. | ||||
Steps To Reproduce | Set these settings in xdebug.ini: xdebug.trace_enable_trigger = 1 zend_extension="/usr/local/xxxx/5.6.8/lib/php/extensions/no-debug-non-zts-20131226/xdebug.so" Restart apache or other webserver. Create a webpage in PHP which will call at least one function with one of its parameter as a closure. Enable trace functionnality throw the cookie for example. Load the page. | ||||
Additional Information | I belive the os version is not useful for this problem so I didn't fill the field. But just for information it is centos el6 | ||||
Tags | No tags attached. | ||||
Operating System | |||||
PHP Version | 5.6.5-5.6.9 | ||||
|
Sorry for the mistake in the summary seems I could not change it myself but it is for xdebug.collect_params = 5 of course... |
|
Could you please provide a reproducible script? I'm having trouble reproducing this myself. |
|
well I'd believe that this simple script should already raise an issue: <?php function testClosureParamSerialization(callable $fn) { testClosureParamSerialization( |
|
I have just tried this with PHP 5.6.23, and I can not reproduce this. I get php -n -dzend_extension=xdebug.so -dxdebug.auto_trace=1 -dxdebug.trace_format=0 do? Does that still crash? Can you try a later PHP 5.6.x version? |
|
Hello, I've been giving a quick try and I've to agree that simple script does not crash. I'm not sure how to reproduce it then as the original use case was very complex (a lot of code involved) and I just trusted the error reported as the root cause. So I thought this script should do something already but it must be of higher complexity than that. However is it normal to get a N; base64 encoded? I was somehow expecting the text return in collect_parameter=4 base64 encoded... I guess it is somehow also related to the non serializability of the closure? Maybe with some more complex use case the test fail to see that one of the parameter include a closure and crash instead of putting N; instead? |
|
I haven't had the time to reproduce this. |
|
Hi, I've tried reproducing this again, but I am still not having success. |
|
Can't reproduce this, and no feedback provided. |
Date Modified | Username | Field | Change |
---|---|---|---|
2016-03-17 02:16 | jboffel | New Issue | |
2016-03-17 02:18 | jboffel | Note Added: 0003571 | |
2016-05-10 21:27 | derick | Note Added: 0003592 | |
2016-05-10 21:27 | derick | Assigned To | => derick |
2016-05-10 21:27 | derick | Status | new => feedback |
2016-05-11 02:56 | jboffel | Note Added: 0003600 | |
2016-05-11 02:56 | jboffel | Status | feedback => assigned |
2016-05-29 08:11 | derick | Note Added: 0003617 | |
2016-05-29 08:11 | derick | Status | assigned => feedback |
2016-05-30 07:01 | jboffel | Note Added: 0003622 | |
2016-05-30 07:01 | jboffel | Status | feedback => assigned |
2016-07-31 12:36 | derick | Category | Usage problems => Usage problems (Crashes) |
2016-07-31 12:38 | derick | Category | Usage problems (Crashes) => Usage problems (Wrong Results) |
2016-12-04 15:52 | derick | Note Added: 0003909 | |
2016-12-04 15:52 | derick | Status | assigned => acknowledged |
2017-03-19 22:21 | derick | Note Added: 0004239 | |
2017-03-19 22:21 | derick | Status | acknowledged => feedback |
2018-01-29 21:46 | derick | Note Added: 0004576 | |
2018-01-29 21:46 | derick | Status | feedback => resolved |
2018-01-29 21:46 | derick | Resolution | open => unable to reproduce |
2020-03-12 16:35 | derick | Category | Usage problems (Wrong Results) => Variable Display |
2020-03-12 16:38 | derick | Category | Variable Display => Uncategorized |