summaryrefslogtreecommitdiff
path: root/src/citra_qt/debugger/callstack.cpp
diff options
context:
space:
mode:
authorGravatar archshift2015-01-10 22:39:00 -0800
committerGravatar archshift2015-01-11 21:47:28 -0800
commitd670b7e52261c6cb4b53fb7f457f8ab4614ebc30 (patch)
treedb543f0228cc9870c0c4eec3fa54ca61257bd9eb /src/citra_qt/debugger/callstack.cpp
parentMerge pull request #468 from lioncash/adc (diff)
downloadyuzu-d670b7e52261c6cb4b53fb7f457f8ab4614ebc30.tar.gz
yuzu-d670b7e52261c6cb4b53fb7f457f8ab4614ebc30.tar.xz
yuzu-d670b7e52261c6cb4b53fb7f457f8ab4614ebc30.zip
Qt Callstack: Clear the callstack every time it's updated
This fixes the issue that old members of the callstack would stick around, even when the callstack shortened.
Diffstat (limited to 'src/citra_qt/debugger/callstack.cpp')
-rw-r--r--src/citra_qt/debugger/callstack.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/citra_qt/debugger/callstack.cpp b/src/citra_qt/debugger/callstack.cpp
index 025a5896b..9bb22ca2e 100644
--- a/src/citra_qt/debugger/callstack.cpp
+++ b/src/citra_qt/debugger/callstack.cpp
@@ -33,6 +33,8 @@ void CallstackWidget::OnDebugModeEntered()
33 u32 sp = app_core->GetReg(13); //stack pointer 33 u32 sp = app_core->GetReg(13); //stack pointer
34 u32 ret_addr, call_addr, func_addr; 34 u32 ret_addr, call_addr, func_addr;
35 35
36 Clear();
37
36 int counter = 0; 38 int counter = 0;
37 for (u32 addr = 0x10000000; addr >= sp; addr -= 4) 39 for (u32 addr = 0x10000000; addr >= sp; addr -= 4)
38 { 40 {
@@ -76,3 +78,12 @@ void CallstackWidget::OnDebugModeLeft()
76{ 78{
77 79
78} 80}
81
82void CallstackWidget::Clear()
83{
84 for (int row = 0; row < callstack_model->rowCount(); row++) {
85 for (int column = 0; column < callstack_model->columnCount(); column++) {
86 callstack_model->setItem(row, column, new QStandardItem());
87 }
88 }
89}