asdbg icon indicating copy to clipboard operation
asdbg copied to clipboard

Crash or hang on exit and locking breakpoints

Open mctb32 opened this issue 6 years ago • 2 comments

I managed to implement asdbg in our game in a very short time. Everything seems to work fine, except I've run into two issues:

  • at host app exit everything hangs on dbg::Release() (it hangs on _networkThread.join(); if not connected with the debugger gui, and on clientThread.join() otherwise).
  • at some point when working with the debugger, the breakpoint filename paths change from relative to absolute and can no longer be removed (clicking the same lines just adds another breakpoint with a relative path). It already happened a few times, but I can't pinpoint the repro.

Any help with those issues would be welcome :) Anyway, big thanks for sharing the code for the debugger and hoping you will keep working on it. I will post some ideas about possible improvements in a separate issue.

mctb32 avatar Jun 26 '18 15:06 mctb32

Ah yeah, I guess the socket is all blocking, (accept() and recv()) and would need to be changed to non-blocking so that it can actually be interrupted. Or perhaps blocking calls will return if the socket closes anyway? That might be a beter solution there.

Not sure about the absolute filename thing. I've seen it happen too, unsure if it's a bug in host or client code.

codecat avatar Jun 27 '18 09:06 codecat

Thanks for your reply! Sockets are not my thing, so I can't say what's the right way to handle this. I found another case which causes a hang - if you "step over" out of a script function that returns to host code, the debugger gui disconnects and the host app hangs. And restarting the gui does not reconnect so you can only reboot the host app at this point.

I'll let you know if I find a working repro for the absolute path thing.

mctb32 avatar Jun 27 '18 10:06 mctb32