microsoft / microsoft/vscode-cpptools

[openSUSE] C++ debugger gets into a never ending loop

Aperta
#2,812 6 commenti 0 reazioni 1 assegnatario Vedi su GitHub

@pieandcakes ci sta già lavorando.

Dal 15/11/2018.

debugger
Lingua principale
TypeScript
Stelle
6.2k
Fork
1.7k
Merge medio
14h 46m
PR unite (30g)
61

Descrizione

Type: Debugger
Input information below
cppdbg

Please review existing issues and our documentation at https://github.com/Microsoft/vscode-cpptools/tree/master/Documentation prior to filing an issue.

Describe the bug
The debugger gets into a never ending loop! In version 1.28 the debugger control bar didn't show and I had to exit vscode completely. With 1.29 update the debugger control bar shows up but pause, step over, step in/out and restart are inactive, only the stop is active, so in 1.29 I can stop the loop without exiting vscode.

  • OS and Version:
    openSuse tumbleweed 20181110
    openSuse leap 15.0

  • VS Code Version:
    1.28
    1.29

  • C/C++ Extension Version:
    0.20.1 and 0.20.0 with vscode v1.28
    0.20.1 with vscode v1.29

  • Other extensions you installed (and if the issue persists after disabling them):
    On my development machine (tumbleweed) I uninstalled all the extensions and installed C++ extension again after the problem emerged. Then deleted everything which had to do with vscode installation and install vscode 1.29 with only C++ extension again.
    Then I installed vscode 1.29 and only C++ on another machine (leap) with no prior vscode installation and C++ extension.
    In booth cases the result is that debugger gets into a never ending loop with the difference, as mentioned above, that the debugger controller bar shows with above mentioned restrictions.

  • A clear and concise description of what the bug is.
    C++ debugger gets in to a never ending loop.

To Reproduce
Please include a code sample and launch.json configuration.
with any code as simple as the following which I tried just to make sure the problem is not due to the code I am working on:

int main() {
const int bufsize = 100;
char* buf[bufsize];
char cp[] = "Howdy";
char* p = cp;
}

{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "(gdb) Launch",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/a.out",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
]
}
]
}
Steps to reproduce the behavior:

  1. Go to '...'
  2. Click on '....'
  3. Scroll down to '....'
  4. See error

Additional context
If applicable, please include logging by adding "logging": { "engineLogging": true, "trace": true, "traceResponse": true } in your launch.json
Add any other context about the problem here including log or error messages in your Debug Console or Output windows.

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.