1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
|
--TEST--
Test for bug #614: local variables loses class members (< PHP 8.1)
--SKIPIF--
<?php
require __DIR__ . '/../utils.inc';
check_reqs('PHP < 8.1; dbgp');
?>
--FILE--
<?php
require 'dbgp/dbgpclient.php';
$filename = realpath( dirname(__FILE__) . '/bug00614.inc' );
$commands = array(
"breakpoint_set -t line -f file://{$filename} -n 62",
'run',
'stack_get',
'property_get -n $e',
'property_get -n $e -p 1',
'property_get -n $e->k',
'property_get -n $e->*Base*k',
'detach'
);
dbgpRunFile( $filename, $commands );
?>
--EXPECTF--
<?xml version="1.0" encoding="iso-8859-1"?>
<init xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" fileuri="file://bug00614.inc" language="PHP" xdebug:language_version="" protocol_version="1.0" appid=""><engine version=""><![CDATA[Xdebug]]></engine><author><![CDATA[Derick Rethans]]></author><url><![CDATA[https://xdebug.org]]></url><copyright><![CDATA[Copyright (c) 2002-2099 by Derick Rethans]]></copyright></init>
-> breakpoint_set -i 1 -t line -f file://bug00614.inc -n 62
<?xml version="1.0" encoding="iso-8859-1"?>
<response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="breakpoint_set" transaction_id="1" id="{{PID}}0001"></response>
-> run -i 2
<?xml version="1.0" encoding="iso-8859-1"?>
<response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="run" transaction_id="2" status="break" reason="ok"><xdebug:message filename="file://bug00614.inc" lineno="62"></xdebug:message></response>
-> stack_get -i 3
<?xml version="1.0" encoding="iso-8859-1"?>
<response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="stack_get" transaction_id="3"><stack where="{main}" level="0" type="file" filename="file://bug00614.inc" lineno="62"></stack></response>
-> property_get -i 4 -n $e
<?xml version="1.0" encoding="iso-8859-1"?>
<response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="property_get" transaction_id="4"><property name="$e" fullname="$e" type="object" classname="Extension" children="1" numchildren="33" page="0" pagesize="32"><property name="k" fullname="$e->k" facet="private" type="int"><![CDATA[77]]></property><property name="m" fullname="$e->m" facet="private" type="int"><![CDATA[66]]></property><property name="j" fullname="$e->j" facet="private" type="int"><![CDATA[55]]></property><property name="*Base*a" fullname="$e->*Base*a" facet="private" type="null"></property><property name="*Base*b" fullname="$e->*Base*b" facet="private" type="null"></property><property name="*Base*c" fullname="$e->*Base*c" facet="private" type="null"></property><property name="*Base*d" fullname="$e->*Base*d" facet="private" type="null"></property><property name="*Base*e" fullname="$e->*Base*e" facet="private" type="null"></property><property name="*Base*f" fullname="$e->*Base*f" facet="private" type="null"></property><property name="*Base*g" fullname="$e->*Base*g" facet="private" type="null"></property><property name="*Base*h" fullname="$e->*Base*h" facet="private" type="null"></property><property name="*Base*i" fullname="$e->*Base*i" facet="private" type="int"><![CDATA[99]]></property><property name="*Base*l" fullname="$e->*Base*l" facet="private" type="null"></property><property name="*Base*n" fullname="$e->*Base*n" facet="private" type="null"></property><property name="*Base*o" fullname="$e->*Base*o" facet="private" type="null"></property><property name="*Base*p" fullname="$e->*Base*p" facet="private" type="null"></property><property name="*Base*q" fullname="$e->*Base*q" facet="private" type="null"></property><property name="*Base*r" fullname="$e->*Base*r" facet="private" type="null"></property><property name="*Base*s" fullname="$e->*Base*s" facet="private" type="null"></property><property name="*Base*t" fullname="$e->*Base*t" facet="private" type="null"></property><property name="*Base*u" fullname="$e->*Base*u" facet="private" type="null"></property><property name="*Base*v" fullname="$e->*Base*v" facet="private" type="null"></property><property name="*Base*w" fullname="$e->*Base*w" facet="private" type="null"></property><property name="*Base*x" fullname="$e->*Base*x" facet="private" type="null"></property><property name="*Base*y" fullname="$e->*Base*y" facet="private" type="null"></property><property name="*Base*z" fullname="$e->*Base*z" facet="private" type="null"></property><property name="*Base*z1" fullname="$e->*Base*z1" facet="private" type="null"></property><property name="*Base*z2" fullname="$e->*Base*z2" facet="private" type="null"></property><property name="*Base*z3" fullname="$e->*Base*z3" facet="private" type="null"></property><property name="*Base*z4" fullname="$e->*Base*z4" facet="private" type="null"></property><property name="*Base*j" fullname="$e->*Base*j" facet="private" type="int"><![CDATA[88]]></property><property name="*Base*k" fullname="$e->*Base*k" facet="private" type="int"><![CDATA[11]]></property></property></response>
-> property_get -i 5 -n $e -p 1
<?xml version="1.0" encoding="iso-8859-1"?>
<response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="property_get" transaction_id="5"><property name="$e" fullname="$e" type="object" classname="Extension" children="1" numchildren="33" page="1" pagesize="32"><property name="*Base*m" fullname="$e->*Base*m" facet="private" type="null"></property></property></response>
-> property_get -i 6 -n $e->k
<?xml version="1.0" encoding="iso-8859-1"?>
<response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="property_get" transaction_id="6"><property name="$e->k" fullname="$e->k" type="int"><![CDATA[77]]></property></response>
-> property_get -i 7 -n $e->*Base*k
<?xml version="1.0" encoding="iso-8859-1"?>
<response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="property_get" transaction_id="7"><property name="$e->*Base*k" fullname="$e->*Base*k" type="int"><![CDATA[11]]></property></response>
-> detach -i 8
<?xml version="1.0" encoding="iso-8859-1"?>
<response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="detach" transaction_id="8" status="stopping" reason="ok"></response>
|