Thanks for the info. I'm trying out Xdebug with Eclipse/PDT, but it still doesn't quite seem to do the trick. It works as expected in a single-script scenario, but here's what I see in the xdebug log in a multi-page scenario:
[I initiate a debugging session from within eclipse, calling the first page of my test application]
Log opened at 2007-08-22 16:49:50
->
<- breakpoint_set -i 41 -t line -f file:///C:/Program%20Files/Apache/Apache%202.2/htdocs/ecl/foobar.inc -n 3
->
<- breakpoint_set -i 42 -t line -f file:///c:/program%20files/apache/apache%202.2/htdocs/test-debug.php -n 4
->
<- breakpoint_set -i 43 -t line -f file:///c:/program%20files/apache/apache%202.2/htdocs/results.php -n 4
->
<- feature_set -i 44 -n show_hidden -v 1
->
<- feature_set -i 45 -n max_depth -v 3
->
<- feature_get -i 46 -n max_children
->
<- feature_get -i 47 -n encoding
->
<- feature_get -i 48 -n supports_async
->
<- run -i 49
->
<- stack_get -i 50
->
<- stack_get -i 51
->
<- run -i 52
->
Log closed at 2007-08-22 16:49:57
[The first page has finished rendering and I'm ready to submit a simple form on it.]
[I submit the form on the first page which calls the second page.]
Log opened at 2007-08-22 16:50:02
->
->
->
Log closed at 2007-08-22 16:50:02
[I now see the output of the form I submitted, but the debugger never triggered on the breakpoint I had set in the code that generates that result.]
The thing that struck me here was the fact that idekey="SOMETHING" when I submit the form on the first page. (I would expect it to be ECLIPSE_DBGP, the way it was when I loaded up the first page.)
It looks like xdebug "knows" that it should stop at the breakpoint in my results file (I see the status="break" in the second log open block), but the IDE isn't triggering there, probably because the idekey is not ECLIPSE_DBGP? Is this hypothesis reasonable and if so do you have any suggestions about why the idekey is wrong? (I checked my cookies at each step: When the first script completes I have an XDEBUG_SESSION cookie with a value of ECLIPSE_DBGP, but when the second script completes the value of the XDEBUG_SESSION cookie is SOMETHING.)
Thanks again,
Noah
----------------------------------------------------------
>>
>> Is there a way to configure XDebug/debugclient so that I can wander
>> through the pages of my application at will and have it stop on any
>> breakpoint set in any file, regardless of which page I entered the
>> application on? Or will it always go to a "stopped" state when the
>> current script finishes execution?
>
>The debugclient itself does not support this, it is a *very* simple
>client just meant for debugging the protocol interaction. Most other
>clients listed[1] will re-issue breakpoints when a new connection is
>made. It can not be done in Xdebug itself-as you never know to which
>apache process the request goes and there is nothing shared between
>apache processes.
>
>[1] http://www.xdebug.org/docs/remote#clients
>
>It could be an addition to the debugclient client though, but then it
>needs quite a bit of modifications.
>
>regards,
>Derick
Received on Wed Aug 22 2007 - 19:02:47 BST
This archive was generated by hypermail 2.2.0 : Mon Jun 25 2018 - 06:00:04 BST