View Issue Details

IDProjectCategoryView StatusLast Update
0001186XdebugUsage problems (Wrong Results)public2016-12-03 13:35
ReporterblaimiAssigned Toderick 
PrioritynormalSeveritycrashReproducibilityalways
Status resolvedResolutionnot fixable 
PlatformLinuxOSDebianOS Version“jessie” 8
Product Version2.3.3 
Target VersionFixed in Version 
Summary0001186: xdebug crash when using \DOMAttr with collect_params > 0
Descriptionxdebug crashs if an object of type \DOMAttr is used. This happens on var_dump($domattr) as well as enabling the code-trace.

The error occures from 2.3.0 to 2.3.3. 2.2.7 is not affected.
Steps To Reproduce<?php

function give_attr() {
        return new DOMAttr('attr', 'value');
}

function print_value($dom_attribute) {
        echo $dom_attribute->value;
}

$dom_attribute = give_attr();
//print_value($dom_attribute);
//var_dump($dom_attribute);


the skript crashes at the var_dump if collect_params is greater than 0 in every case. print_value is working if collect_params is less than 3 or tracing is disabled. the return value of give_attr() is always 'null' if collect_return is enabled, which is also wrong but I don't know if it's a different bug).

Conclusion:
the script cashes in the moment xdebug wants to access the properties of \DOMAttr and collect_params != 0. I don't get, why the var_dump is working in the case collect_params is 0 :/
Additional Informationthis is maybe related to 0000910 and 0000913
TagsNo tags attached.
Operating System
PHP Version5.6.10-5.6.14

Activities

derick

2015-10-23 08:24

administrator   ~0003186

I can reproduce this with Xdebug 2.3 - but no longer with the master branch. Would you be so kind to give that a spin?

blaimi

2015-10-28 10:38

reporter   ~0003197

The code now gives a “not implemented” warning and the code doesn't crash. the bug with the return-value seems also be fixed.

derick

2016-12-03 13:35

administrator   ~0003884

I checked this once more, and the "not yet implemented" comes from the DOM extension itself. It shows the same warning when Xdebug is *not* loaded, which makes this a bug (or, not yet implemented features) in PHP's DOM extension. There is a bug in the PHP bug system for this already too: https://bugs.php.net/bug.php?id=61858

Issue History

Date Modified Username Field Change
2015-09-21 16:43 blaimi New Issue
2015-10-23 08:24 derick Note Added: 0003186
2015-10-23 08:24 derick Assigned To => derick
2015-10-23 08:24 derick Status new => feedback
2015-10-28 10:38 blaimi Note Added: 0003197
2015-10-28 10:38 blaimi 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-03 13:35 derick Note Added: 0003884
2016-12-03 13:35 derick Status assigned => resolved
2016-12-03 13:35 derick Resolution open => not fixable