Join GitHub today
GitHub is home to over 36 million developers working together to host and review code, manage projects, and build software together.Sign up
Debugger hangs on break if dbgsym packages are installed, SourceRequest #3662
Issue Type: Bug
I'm on Debian Testing/Buster. The project I was working on when hitting this bug was SolveSpace - will attach the launch config (I had it set to break on a glib warning, which one occurs when you go to exit the app). But I don't expect those specifics to matter too much.
Initially, I had function names for a number of stack frames, but they were greyed out (just like, e.g. raise.c from the c library is) and couldn't click them. I wanted to look a bit closer so I went to add the debug symbols - apparently they're in a separate apt repo now - so I added
Now, most of the greyed-out ones are no longer greyed (presumably because of the dbgsym packages). However, the debugger hangs (can't continue, view other stack frames, etc - can only hit "stop" and that doesn't actually close the app) as soon as it breaks in a place that is related to those symbol packages. It appears to be trying to load something and failing (it shows an error "Stopping due to fatal error: NotImplementedException: No handler implemented for request type 'SourceRequest'" in the debug console), but can't even view the stack frames I know I have source for.
Can't debug with extensions disabled, which is why I'm filing this here.
Here's the launch config I used for my SolveSpace build, it automatically triggers breakpoints on some warning messages in glib, which are getting triggered on exit.
Note that most stack frames aren't greyed out, the "NotImplementedException" in the debug console, and the attempt to open a source file (from the libraries I installed dbgsym for) causing an activity-bar to keep scrolling.
Clicking stack frames does nothing but switch to another file it can't show me. The "Load more stack frames" button does nothing, as do attempting to expand the other threads' call tacks.
Here are two screen casts: one showing what happens when the dbgsym packages are installed (at the end, I show how the stop button didn't actually stop the debugged application), the other showing it working more correctly after I uninstalled them.
and here's the launch.json for this exact reproduction, though I suspect any library that is system-installed and has the ability to break on some condition might cause the same thing.
Extension version: 0.23.1
@rpavlik Thank you for reporting this. Does this happen quite consistently for you? if so, can you do me a favor and get me a
AFAIK we don't support SourceRequest (which is what the exception is) but I can't understand why VS Code is sending us the request in the first place.
If you don't want to post it here but you are comfortable emailing it to me, my email address is in my profile.
Well, I'd never had it happen before but I never had those packages installed before. I kept them installed just long enough to record the data.
I re-installed those packages, added the traceResponse config to launch, and it was perfectly reproducible. I got this: (didn't see anything too sensitive - this is all open source code, and I just used solvespace master as of right now.)