From d35dcd8dbef7e5dc6f2d87870267231f99379082 Mon Sep 17 00:00:00 2001
From: hjk <qtc-committer@nokia.com>
Date: Fri, 23 Oct 2009 17:06:25 +0200
Subject: [PATCH] debugger: better handling of qfDllInfo packet

---
 src/plugins/debugger/gdb/trkgdbadapter.cpp | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/src/plugins/debugger/gdb/trkgdbadapter.cpp b/src/plugins/debugger/gdb/trkgdbadapter.cpp
index e17223bf223..c3604a80319 100644
--- a/src/plugins/debugger/gdb/trkgdbadapter.cpp
+++ b/src/plugins/debugger/gdb/trkgdbadapter.cpp
@@ -806,22 +806,23 @@ void TrkGdbAdapter::handleGdbServerCommand(const QByteArray &cmd)
         // http://sourceware.org/ml/gdb/2007-05/msg00038.html
         // Name=hexname,TextSeg=textaddr[,DataSeg=dataaddr]
         sendGdbServerAck();
-        QByteArray response; // = "m";
+        QByteArray response = "m";
         // FIXME: Limit packet length by using qsDllInfo packages?
-        foreach (const Library &lib, m_session.libraries) {
+        for (int i = 0; i != m_session.libraries.size(); ++i) {
+            if (i)
+                response += ';';
+            const Library &lib = m_session.libraries.at(i);
             response += "Name=" + lib.name.toHex()
                 + ",TextSeg=" + hexNumber(lib.codeseg)
                 + ",DataSeg=" + hexNumber(lib.dataseg);
-            response += ';';
         }
-        response += "l";
         sendGdbServerMessage(response, "library information transfered");
     }
 
     else if (cmd == "qsDllInfo") {
         // That's a following query package
         sendGdbServerAck();
-        sendGdbServerMessage("", "FIXME: nothing?");
+        sendGdbServerMessage("l", "library information transfer finished");
     }
 
     else if (cmd == "qPacketInfo") {
-- 
GitLab