From b96b2a2b3a8ce4c2d308143c09c1ba8ca55a0c18 Mon Sep 17 00:00:00 2001
From: hjk <qtc-committer@nokia.com>
Date: Wed, 16 Sep 2009 11:46:15 +0200
Subject: [PATCH] debugger: add some possible explanation for the need to ask
 for stacktraces twice

---
 src/plugins/debugger/gdb/gdbengine.cpp | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/src/plugins/debugger/gdb/gdbengine.cpp b/src/plugins/debugger/gdb/gdbengine.cpp
index 37e6df0718d..88454812f50 100644
--- a/src/plugins/debugger/gdb/gdbengine.cpp
+++ b/src/plugins/debugger/gdb/gdbengine.cpp
@@ -1283,7 +1283,12 @@ void GdbEngine::reloadStack()
     if (stackDepth && !m_gdbAdapter->isAdapter())
         cmd += _(" 0 ") + QString::number(stackDepth);
     postCommand(cmd, WatchUpdate, CB(handleStackListFrames), false);
-    // FIXME: gdb 6.4 likes to be asked twice
+    // FIXME: gdb 6.4 symbianelf likes to be asked twice. The first time it
+    // returns with "^error,msg="Previous frame identical to this frame
+    // (corrupt stack?)". Might be related to the fact that we can't
+    // access the memory belonging to the lower frames. But as we know
+    // this always happens, ask the second time immediately instead
+    // of waiting for the first request to fail.
     if (m_gdbAdapter->isAdapter())
         postCommand(cmd, WatchUpdate, CB(handleStackListFrames), false);
 }
-- 
GitLab