Description
Happened During testing: https://wiki.qt.io/Qt_Creator_ManualTests_DebuggerLldb
Steps to reproduce:
- Remove return in tests/manual/debugger/simple/simple_test_app.cpp testEndlessRecursion
- Let the app crash
- click on "<More>" in the stack trace many times
- once the stack doesn't update anymore, click any stackframe and observe the "locals" window showing the Spinning Wheel
There are two issues:
- The logic of LldbEngine::activateFrame() when "isSpecialFrame" is true is to fetch "currentStackSize * 10 + 3". Thats a huge step from e.g. 2000 to 20000 frames. This should be limited to a reasonable value.
- While the fetching isn't done the user can click the "<More>" item again and again and it will request stack listings every time.
Expected outcome:
- The result of clicking <More> should be done in "a second or two"
- Clicking more repeatedly should not prolong the time it takes to get a responsive debugger again.