Fix disassembler view on Xcode4.

The gdb shipped with Xcode4 simply never returns if the command is
"disassemble /m someaddress", Xcode3 returned an error, which resulted
in a call for non-mixed disassembly. So we set the disassembler agent to
not try mixed in case of Mac tool chain abi.

Reviewed-by: Friedemann Kleint
This commit is contained in:
con
2011-04-28 15:05:14 +02:00
parent 783779058b
commit 9841050791

View File

@@ -180,6 +180,8 @@ public:
m_isStateDebugging(false) m_isStateDebugging(false)
{ {
connect(&m_locationTimer, SIGNAL(timeout()), SLOT(resetLocation())); connect(&m_locationTimer, SIGNAL(timeout()), SLOT(resetLocation()));
if (sp.toolChainAbi.os() == ProjectExplorer::Abi::MacOS)
m_disassemblerAgent.setTryMixed(false);
} }
~DebuggerEnginePrivate() {} ~DebuggerEnginePrivate() {}
@@ -559,7 +561,6 @@ void DebuggerEngine::resetLocation()
void DebuggerEngine::gotoLocation(const Location &loc) void DebuggerEngine::gotoLocation(const Location &loc)
{ {
if (debuggerCore()->boolSetting(OperateByInstruction) || !loc.hasDebugInfo()) { if (debuggerCore()->boolSetting(OperateByInstruction) || !loc.hasDebugInfo()) {
d->m_disassemblerAgent.setTryMixed(true);
d->m_disassemblerAgent.setLocation(loc); d->m_disassemblerAgent.setLocation(loc);
return; return;
} }
@@ -1591,7 +1592,6 @@ void DebuggerEngine::updateMemoryViews()
void DebuggerEngine::openDisassemblerView(const Location &location) void DebuggerEngine::openDisassemblerView(const Location &location)
{ {
DisassemblerAgent *agent = new DisassemblerAgent(this); DisassemblerAgent *agent = new DisassemblerAgent(this);
agent->setTryMixed(true);
agent->setLocation(location); agent->setLocation(location);
} }