From d8e132d15d895ff63d8421b8e82465f7d2a1056c Mon Sep 17 00:00:00 2001
From: hjk <hjk121@nokiamail.com>
Date: Wed, 22 Jan 2014 16:25:39 +0100
Subject: [PATCH] Debugger: Disable item model dumper for LLDB

Needs better infrastructure.

Change-Id: I53a53953bd347c296626c03636775f6057faf385
Reviewed-by: hjk <hjk121@nokiamail.com>
---
 share/qtcreator/debugger/lldbbridge.py | 10 ++++++++++
 tests/auto/debugger/tst_dumpers.cpp    |  2 +-
 2 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/share/qtcreator/debugger/lldbbridge.py b/share/qtcreator/debugger/lldbbridge.py
index 26de4dde467..1bf322692d2 100644
--- a/share/qtcreator/debugger/lldbbridge.py
+++ b/share/qtcreator/debugger/lldbbridge.py
@@ -413,6 +413,16 @@ class Dumper(DumperBase):
         #warn("  -> %s" % result)
         return result
 
+    def makeValue(self, type, *args):
+        thread = self.currentThread()
+        frame = thread.GetFrameAtIndex(0)
+        inner = ','.join(args)
+        value = frame.EvaluateExpression(type + '{' + inner + '}')
+        #warn("  TYPE: %s" % value.type)
+        #warn("  ADDR: 0x%x" % value.address)
+        #warn("  VALUE: %s" % value)
+        return value
+
     def parseAndEvaluate(self, expr):
         thread = self.currentThread()
         frame = thread.GetFrameAtIndex(0)
diff --git a/tests/auto/debugger/tst_dumpers.cpp b/tests/auto/debugger/tst_dumpers.cpp
index 5e79ddef9f6..ee2eae46386 100644
--- a/tests/auto/debugger/tst_dumpers.cpp
+++ b/tests/auto/debugger/tst_dumpers.cpp
@@ -3370,7 +3370,7 @@ void tst_Dumpers::dumper_data()
                % Check("i11", "", "@QStandardItem")
                % Check("i2", "", "@QStandardItem")
                % Check("m", "", "@QStandardItemModel")
-               % Check("mi", "\"1\"", "@QModelIndex");
+               % Check("mi", "\"1\"", "@QModelIndex").setEngines(GdbEngine);
 
     QTest::newRow("QStackInt")
             << Data("#include <QStack>\n",
-- 
GitLab