I suspect that you may soon become my best friend in the whole world. There's only one glitch at the moment; the debugger is not invoked when there is an exception.
MacOS 10.6.2 PHP 5.3.0 built from source (I'm pretty sure) MacDGBp 1.3.1 (34) Xdebug 2.05 installed with pecl
Despite the fact that the MacDGBp main window always says DISCONNECTED, when I start the session MacGDBp is invoked. I can set breakpoints and the debugger works as advertised, so I'm pretty sure I've got things configured all right. I tried setting remote_mode=jit (both in php.ini and in code) to see if that would help but it didn't. Is there a config issue here perhaps?
I haven't tested with the jit mode before. Please file a bug at http://bluestatic.org/bugs/ and give some reproducible steps, if possible. I'll look into this when I have some time to work onMacGDBp.
As a workaround, though, you can create an exception handler via set_exception_handler() and use xdebug_break() in the handler function. The debugger will then break whenever an exception is thrown.
Thanks! In the meantime I've had to rebuild my entire development system, and I'm just now getting the debugger to work. Wish I remembered the steps from last time. set_exception_handler() should do the trick.
Not sure about reproducible steps, since it never broke on an exception ever. steps would be like: 1) write code that calls a function that doesn't exist. 2) run it
If I can shed any more useful information on it, I'll put it in the bug database.
Hi Robert, I absolutly love MacGDBp and it's helping me out loads with remote debugging, nice not to have to hack var_dumps into the code :) I was talking with Derick Rethans on irc about this today, apparently the only debugger that currently does a break on exception is Komodo. He suggest it would be a relatively easy modification to get MacGDBp to do it too, so when an exception occurs (when in jit mode) the debugger would break on exceptions. He suggests having a look at http://xdebug.org/docs-dbgp.php#id1 and more specifically -x EXCEPTION.
So I imagine an option within MacGDBp's preferences for break on exception and when that is turned on and the initial contact is made between MacGDBp and xdebug it sets a break point of breakpoint_set -i TRANSACTION_ID -x Exception (for generic exceptions, xdebug doesn't check inheritence atm so the ability to add a list of exception name would be good too)