diff --git a/qrenderdoc/Windows/APIInspector.cpp b/qrenderdoc/Windows/APIInspector.cpp index 9df833c35..fe2b93ad1 100644 --- a/qrenderdoc/Windows/APIInspector.cpp +++ b/qrenderdoc/Windows/APIInspector.cpp @@ -180,17 +180,24 @@ void APIInspector::on_apiEvents_itemSelectionChanged() if(chunk && !chunk->metadata.callstack.isEmpty()) { + ui->callstack->setUpdatesEnabled(false); + ui->callstack->clear(); + ui->callstack->addItem(tr("Loading...")); + if(!m_Ctx.Replay().AsyncAccessInvoke([this, chunk](ICaptureAccess *access) { rdcarray stack = access->GetResolve(chunk->metadata.callstack); GUIInvoke::call(this, [this, stack]() { addCallstack(stack); }); })) { - ui->callstack->setUpdatesEnabled(false); ui->callstack->clear(); ui->callstack->addItem(tr("Callstack resolution not available.")); ui->callstack->setUpdatesEnabled(true); } + else + { + ui->callstack->setUpdatesEnabled(true); + } } else {