MantisBT

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0001513XdebugRemote Debuggingpublic2018-01-05 12:552018-01-07 18:05
ReporterLanaZem 
Assigned Toderick 
PrioritynormalSeverityminorReproducibilityalways
StatusresolvedResolutionfixed 
PlatformOSOS Version
Product Version2.6.0beta1 
Target VersionFixed in Version 
Summary0001513: Xdebug returns escaped property fullname with enabled extended_properties
DescriptionIf property fullname contains backslashes Xdebug will escape it in 'property_get' response even in extended properties format.
Steps To Reproduce1) Create a php file
<?php

namespace TestA\TestB\TestC;

class A
{
    private $items;

    public function __construct()
    {
        $this->items = array("\x0" => 1);
    }
}

class B extends A {
    public function foo() {
        echo 1; // Set breakpoint here and inspect $items
    }
}

(new B())->foo();

2) Put breakpoint inside 'foo' method and start debugging.

3) Call 'property_get' command for '*TestA\TestB\TestC\A*items'.
<- property_get -i 20 -n $this->*TestA\\TestB\\TestC\\A*items -d 0 -c 0 -p 0

Result:
<property name="$this->*TestA\\TestB\\TestC\\A*items" fullname="$this->*TestA\\TestB\\TestC\\A*items" type="array" children="1" numchildren="1" page="0" pagesize="100">
<property type="int">
<name encoding="base64"><![CDATA[AA==]]></name>
<fullname encoding="base64"><![CDATA[JHRoaXMtPipUZXN0QVxcVGVzdEJcXFRlc3RDXFxBKml0ZW1zWyIAIl0=]]></fullname><value encoding="base64"><![CDATA[MQ==]]></value>
</property>

Where fullname decodes in "$this->*TestA\\TestB\\TestC\\A*items["\x0"]"
TagsNo tags attached.
Operating System
PHP Version7.1.0-7.1.4
Attached Fileslog file icon xdebug_2.6beta_extended_properties.log [^] (23,068 bytes) 2018-01-05 12:55

- Relationships
duplicate of 0001512closedderick Xdebug does not properly encode and escape properties with quotes and \0 characters. 

-  Notes
(0004552)
derick (administrator)
2018-01-07 18:05

Turned out to be a duplicate of 0001512. Just like there, you shouldn't escape the property_get command.

- Issue History
Date Modified Username Field Change
2018-01-05 12:55 LanaZem New Issue
2018-01-05 12:55 LanaZem File Added: xdebug_2.6beta_extended_properties.log
2018-01-07 18:05 derick Note Added: 0004552
2018-01-07 18:05 derick Relationship added duplicate of 0001512
2018-01-07 18:05 derick Status new => resolved
2018-01-07 18:05 derick Resolution open => fixed
2018-01-07 18:05 derick Assigned To => derick


Copyright © 2000 - 2018 MantisBT Team
Powered by Mantis Bugtracker