forked from qt-creator/qt-creator
Debugger: Infrastructure for reworked native mixed debugging
- Remove old experimental native mixed approach. - Move some common stack parsing to Stackhandler. - Mark gdbbridge.py debug output explicitly to remove it from actual reponse handling New native mixed needs QtDeclarative changes and QTC_DEBUGGER_NATIVE_MIXED=1 for now. Change-Id: I09eed1da51cea878636d36756015b7bfaed34203 Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
This commit is contained in:
@@ -2062,10 +2062,9 @@ void QmlEnginePrivate::handleBacktrace(const QVariantMap &response)
|
||||
stackIndexLookup.clear();
|
||||
foreach (const QVariant &frame, frames) {
|
||||
StackFrame stackFrame = extractStackFrame(frame);
|
||||
if (stackFrame.level < 0)
|
||||
if (stackFrame.level.isEmpty())
|
||||
continue;
|
||||
stackIndexLookup.insert(i, stackFrame.level);
|
||||
stackFrame.level = i;
|
||||
stackIndexLookup.insert(i, stackFrame.level.toInt());
|
||||
stackFrames << stackFrame;
|
||||
i++;
|
||||
}
|
||||
@@ -2111,10 +2110,10 @@ StackFrame QmlEnginePrivate::extractStackFrame(const QVariant &bodyVal)
|
||||
const QVariantMap body = bodyVal.toMap();
|
||||
|
||||
StackFrame stackFrame;
|
||||
stackFrame.level = body.value(_("index")).toInt();
|
||||
stackFrame.level = body.value(_("index")).toByteArray();
|
||||
//Do not insert the frame corresponding to the internal function
|
||||
if (body.value(QLatin1String("sourceLineText")) == QLatin1String(INTERNAL_FUNCTION)) {
|
||||
stackFrame.level = -1;
|
||||
stackFrame.level.clear();
|
||||
return stackFrame;
|
||||
}
|
||||
|
||||
@@ -2129,7 +2128,7 @@ StackFrame QmlEnginePrivate::extractStackFrame(const QVariant &bodyVal)
|
||||
stackFrame.usable = QFileInfo(stackFrame.file).isReadable();
|
||||
|
||||
objectData = extractData(body.value(_("receiver")));
|
||||
stackFrame.to = objectData.value.toString();
|
||||
stackFrame.receiver = objectData.value.toString();
|
||||
|
||||
stackFrame.line = body.value(_("line")).toInt() + 1;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user