summaryrefslogtreecommitdiff
path: root/share
diff options
context:
space:
mode:
Diffstat (limited to 'share')
-rw-r--r--share/qtcreator/debugger/lldbbridge.py10
1 files changed, 8 insertions, 2 deletions
diff --git a/share/qtcreator/debugger/lldbbridge.py b/share/qtcreator/debugger/lldbbridge.py
index afbff9099f..7a20042c40 100644
--- a/share/qtcreator/debugger/lldbbridge.py
+++ b/share/qtcreator/debugger/lldbbridge.py
@@ -231,6 +231,7 @@ class Dumper(DumperBase):
self.report('lldbversion=\"%s\"' % lldb.SBDebugger.GetVersionString())
self.reportState("enginesetupok")
+ self.debuggerCommandInProgress = False
def enterSubItem(self, item):
if isinstance(item.name, lldb.SBValue):
@@ -1335,10 +1336,12 @@ class Dumper(DumperBase):
flavor = event.GetDataFlavor()
state = lldb.SBProcess.GetStateFromEvent(event)
bp = lldb.SBBreakpoint.GetBreakpointFromEvent(event)
+ skipEventReporting = self.debuggerCommandInProgress and (eventType == lldb.SBProcess.eBroadcastBitSTDOUT or eventType == lldb.SBProcess.eBroadcastBitSTDERR)
self.report('event={type="%s",data="%s",msg="%s",flavor="%s",state="%s",bp="%s"}'
% (eventType, out.GetData(), msg, flavor, self.stateName(state), bp))
if state != self.eventState:
- self.eventState = state
+ if not skipEventReporting:
+ self.eventState = state
if state == lldb.eStateExited:
if self.isShuttingDown_:
self.reportState("inferiorshutdownok")
@@ -1381,7 +1384,8 @@ class Dumper(DumperBase):
else:
self.reportState("stopped")
else:
- self.reportState(self.stateName(state))
+ if not skipEventReporting:
+ self.reportState(self.stateName(state))
if eventType == lldb.SBProcess.eBroadcastBitStateChanged: # 1
state = self.process.GetState()
if state == lldb.eStateStopped:
@@ -1683,6 +1687,7 @@ class Dumper(DumperBase):
self.reportResult(self.hexencode(result.GetOutput()), {})
def executeDebuggerCommand(self, args):
+ self.debuggerCommandInProgress = True
self.reportToken(args)
result = lldb.SBCommandReturnObject()
command = args['command']
@@ -1691,6 +1696,7 @@ class Dumper(DumperBase):
output = result.GetOutput()
error = str(result.GetError())
self.report('success="%d",output="%s",error="%s"' % (success, output, error))
+ self.debuggerCommandInProgress = False
def fetchDisassembler(self, args):
functionName = args.get('function', '')