View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0001449 | Xdebug | Step Debugging | public | 2017-06-30 08:19 | 2017-12-02 18:36 |
| Reporter | mlocati | Assigned To | |||
| Priority | normal | Severity | major | Reproducibility | always |
| Status | closed | Resolution | fixed | ||
| Platform | Windows 10 | ||||
| Product Version | 2.5.5 | ||||
| Target Version | 2.6.0 | Fixed in Version | 2.6.0alpha1 | ||
| Summary | 0001449: Debugging breaks with array element keys containing low-ASCII variable | ||||
| Description | When inspecting a variable that contains an instance of a class that extends \ArrayObject (and only in this case), my IDE hungs and the execution crashes if the instance contains some values. | ||||
| Steps To Reproduce |
| ||||
| Additional Information | IDE: Eclipse Oxygen (4.7) with PDT 5.1.0.201706291405 (but I had this issue with older Eclipse and PDT versions) php.ini settings for xdebug: Output of php.exe -v See attachment for the log of "xdebug.remote_log" | ||||
| Tags | No tags attached. | ||||
| Operating System | |||||
| PHP Version | 7.0.20-7.0.24 | ||||
|
|
I don't know why the "Steps To Reproduce" reports the version is tilde followed by 3.6.1 |
|
|
I'm able to reproduce this bug even with this very simple code: <?php The crash occurs if the index contains chars < 0x20 (like 0x04 in the above example) |
|
|
PS: I don't know if it's an xdebug or an Eclipse+PDT bug, so I also filed https://bugs.eclipse.org/bugs/show_bug.cgi?id=519045 |
|
|
There are two issues at play here. The first one is that from your log I see that Xdebug doesn't escape the \x04 properly in its XML output, and this is likely why PDT falls over. The second issue is that I don't even get there due to a "can not read property" bug that has been cropping up. I do have an idea how to fix that, but it's harder than I thought. I'll amend this ticket to only track the unescaped \x04 though. |
|
|
This is now fixed for Xdebug 2.6.0-dev, but, it requires that the IDE sets the "extended_properties" feature (https://xdebug.org/docs-dbgp.php#feature-names). This new feature is supported in 2.6.0dev, through https://bugs.xdebug.org/view.php?id=1312. |